Je crée une application et je veux construire un package DEB, mais j'ai un problème ...
Je veux que le paquet DEB puisse être installé à la fois sur des machines 32 bits et des machines 64 bits. Ensuite, je construis un package 32 bits pour prendre en charge les deux architectures, mais j'ai des problèmes avec les dépendances, lorsqu'un système 32 bits installe le package, fonctionne bien, mais lorsqu'un système 64 bits installe le package, les dépendances (bibliothèques partagées) doivent être installé doit être celui de 32 bits (disponible sur les dépôts de 64 bits.)
Comment puis-je y parvenir?
Une réponse rapide est donnée ici: https://help.ubuntu.com/community/32bit_and_64bit#How_to_Make_32-bit_Applications_Work_on_a_64-bit_Operating_System
Installation de ia32-libs
est sûrement la solution la plus rapide, mais elle peut ne pas être suffisante, selon la situation.
Avec multiarch, c'est facile. Construisez simplement un deb i386. Sur une machine AMD64 (si toutes les dépendances ont été multi-archivées dans Ubuntu), les versions 32 bits seront installées.
Dans les installations 64 bits, il devrait y avoir une entrée appropriée pour le référentiel i386, auquel cas vous utilisez packagename:i386
pour la dépendance, au lieu de packagename
. Un exemple de ceci est Wine, où vous avez besoin de bibliothèques 32 et 64 bits pour exécuter toutes vos applications Windows.