Frage

Ich versuche, einen kleinen Build-Cluster zu Hause einrichten distcc verwenden. Es gibt zwei x64-Systeme und 1 i686-Systeme. Alle Systeme laufen Ubuntu 10.10 und sind auf dem neuesten Stand. Das System, das das Build initiiert ist x64. Distcc funktioniert gut zwischen den beiden x64-Systemen, sondern alle Build-Aufgaben an dem i686-System gesendet versagen.

Bisher:

  • Ich habe das multilib Paket für g installiert ++ auf diesem System. Ich bin in der Lage vor Ort zu überqueren-Kompilierung auf x64 mit g++ -m64
  • Changed den Link in /usr/lib/distcc/g++ zu Punkt zu einem Skript, das explizit den -m64 Parameter setzt.

Irgendwelche Vorschläge?

War es hilfreich?

Lösung

Der Versuch, dies man wieder nach mehr Forschung:

GCC hat eine Seite Beschreibung der i386 und x86-64-Optionen . Die -m64 Flag sagt 64-Bit-Code zu generieren, aber Sie wollen auch die Art der CPU mit -march=i686 oder -march=k8 oder ähnlich zu spezifizieren, den korrekten Befehlssatz zu verwenden.

Da distcc die GCC-Befehlszeilen-Flags aus sendet, sollen Sie diese den distcc Befehl versuchen Sie, lokal und überspringen für das Setzen von Flags den Remote-Skript ausgeführt wird.

Wenn Sie die Architektur-Flags auf dem lokalen x64 Maschine testen, ohne distcc, nur g ++, dann sollte es Ihnen, die richtigen Binärdateien geben, wenn distcc verwenden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top