Question

Quelle est la meilleure façon de compiler des programmes avec DMD sur une machine 64 bits? Il n'a pas besoin de compiler le code 64Bit. Je sais GDC, mais que vous voulez travailler avec D2 également. Il y a aussi chroot, mais espère une façon plus simple.

Le problème réel est pas avec la compilation, mais la liaison. DMD appelle GCC pour effectuer la liaison avec les bibliothèques système. Puis-je avoir DMD d'avoir lien GCC contre bibliothèque 32bit? Ou comment pourrais-je le faire manuellement?

Je l'ai déjà les bibliothèques installées ia32 ce qui explique pourquoi je peux courir DMD.

Était-ce utile?

La solution

Demandez GCC pour effectuer la liaison 32 bits en le passant '-m32' drapeau.

Il semble que n'invoque pas DMD pour effectuer le gcc lien, mais invoque plutôt directement ld. Le commutateur équivalent est '-melf_i386' '-L-melf_i386', et apparemment la façon de faire passer cette option <=> à l'éditeur de liens est avec le drapeau <=>.

Notez que de nombreux systèmes distincts bibliothèques d'exécution et de développement. packages d'exécution 32 bits sont presque toujours installés par défaut, mais les paquets de développement 32 bits peuvent ne pas être.

Vous avez besoin développement paquets 32 bits pour construire des programmes 32 bits. Le fait que 32 bits ne peut fonctionner <=> pas en soi prouver que vous avez toutes les bibliothèques 32 bits dont vous avez besoin pour construire des programmes 32 bits.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top