Croce x86_64 compilazione su un sistema i686 su Ubuntu con distcc
-
10-10-2019 - |
Domanda
Sto tentando di installare un piccolo gruppo di costruzione a casa utilizzando distcc. Ci sono due sistemi x64 e 1 i686 sistemi. Tutti i sistemi sono in esecuzione Ubuntu 10.10 e siano aggiornati. Il sistema che si avvia il build è x64. Distcc funziona bene tra i due sistemi x64, ma tutte le attività di generazione inviati al sistema i686 sicuro.
Finora:
- Ho installato il pacchetto multilib per g ++ su quel sistema. Sono in grado di attraversare-compilazione per x64 locale utilizzando
g++ -m64
- Cambiato il link in
/usr/lib/distcc/g++
a punto da uno script che esplicitamente imposta il parametro-m64
.
Qualche suggerimento?
Soluzione
Il tentativo di nuovo questo uno dopo più ricerca:
GCC ha una pagina href="http://gcc.gnu.org/onlinedocs/gcc/i386-and-x86_002d64-Options.html"> . La bandiera -m64
dice per generare il codice a 64 bit, ma si potrà anche specificare il tipo di CPU con -march=i686
o -march=k8
o simile, per utilizzare il set di istruzioni corrette.
Dal distcc invia i flag della riga di comando GCC fuori, si dovrebbe provare ad aggiungere questi al comando distcc in esecuzione a livello locale e saltare lo script remoto per l'impostazione bandiere.
Se si prova le bandiere architettura sulla vostra macchina x64 locale senza distcc, proprio g ++, allora dovrebbe dare i binari giusti quando si usano distcc.