Domanda

Qual è il modo migliore per compilare programmi con DMD su una macchina a 64 bit? Non ha bisogno di compilare in codice a 64 bit. So di GDC, ma voglio lavorare con D2 anche. C'è anche chroot, ma spero per un modo più semplice.

Il problema reale non è con la compilazione, ma il collegamento. DMD invita GCC per eseguire il collegamento con librerie di sistema. Potrei avere DMD avere GCC Link contro libreria a 32 bit? O come dovrei farlo manualmente?

Ho già le librerie ia32 installati ed è per questo posso correre DMD.

È stato utile?

Soluzione

Chiedi GCC per eseguire collegamento a 32 bit passandolo '-m32' bandiera.

Sembra che DMD non invocare gcc per eseguire il collegamento, ma piuttosto ld invoca direttamente. L'interruttore equivalente '-melf_i386' è '-L-melf_i386', ea quanto pare il modo di fare <=> passare che opzione per il linker è con <=> bandiera.

Si noti che molti sistemi separati librerie di runtime e di sviluppo. pacchetti di runtime a 32 bit sono quasi sempre installati per impostazione predefinita, ma pacchetti di sviluppo a 32 bit non possono essere.

È necessario pacchetti di sviluppo a 32 bit per costruire programmi a 32 bit. Il fatto che a 32 bit può essere eseguito <=> per sé non dimostrare di avere tutte le librerie a 32 bit è necessario al fine di costruire programmi a 32 bit.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top