Diese Website existiert nur weil wir Werbung mit AdSense ausliefern.
Bitte den AdBlocker daher auf dieser Website ausschalten! Danke.

32bit binary compilieren unter Linux X86_64

Alles rund um die verschiedenen Konsolen und shells sowie die Programmierung unter Linux

Moderator: Moderatoren

Antworten
SchodMC
Newbie
Newbie
Beiträge: 26
Registriert: 22. Jan 2004, 14:19

32bit binary compilieren unter Linux X86_64

Beitrag von SchodMC »

Ich hätte da mal 'ne Frage:

ich hab einen AMD64 mit linux für x86_64 (SuSE 9.3). Wie kann ich nun mit GCC ein Programm für 32bit erstellen, so dass dieses auch auf einem 32bit Linux läuft?

Mit dem parameter -m32 funktioniert das ganze zwar bei einem simplen "Hallo Welt". Aber bei einem großen Projekt mit makefiles gibt's wohl Probleme.

Zum Hintergrund: wollte ScummVM in einer 32bit Version übersetzen. Hab also "./configure" und danach "make" aufgerufen - einwandfrei. Wenn ich aber "make CXXFLAGS=-m32" verwende, gibt's erstens 'nen haufen warnings (die auf einem 32bit System mit ebenfalls SuSE 9.3 nicht auftreten) und zweitens bricht das make am Ende ab, da es versucht die object files mit den libs von lib64 zu linken. Was genau mache ich falsch oder liegt's an ScummVM?

Wie gesagt, eine einfache C++ Datei mit "g++ -o hello hello.cc" oder "g++ -m32 -o hello hello.cc" hat einwandfrei funktioniert.
Benutzeravatar
TeXpert
Guru
Guru
Beiträge: 2166
Registriert: 17. Jan 2005, 11:22

Beitrag von TeXpert »

Du brauchst die 32bit Libraries, Du musst Deinen Linkpath so setzen, dass nur 32bit-Libs verwendet werden, ...

Code: Alles auswählen

# to resolve all your problems, try this:
HOWTO='pack c5,41*2,sqrt 7056,unpack(c,H)-2,oct 115' && perl -le "print $HOWTO"
Ich beantworte keine Supportfragen per PM!
SchodMC
Newbie
Newbie
Beiträge: 26
Registriert: 22. Jan 2004, 14:19

Beitrag von SchodMC »

Hmm, bei näherer Betrachtung macht das Sinn. Bin noch nicht lange (aktiv) auf Linux umgestiegen und immer noch das "Klicki-Bunti" Prinzip von Windows gewohnt wo die GUI alles für einen macht. :?

Werd's heut Abend gleich mal ausprobieren, Thanx.
Antworten