Hallo,
laut allen verfügbaren Anleitungen soll man C-Programme mit gcc ganz leicht auf einem 32-Bit-Linux für ein 64-Bit-Linux übersetzen können und umgekehrt:
1 | gcc -s -o Programm -m64 Programm.c |
bzw.:
1 | gcc -s -o Programm -m32 Programm.c |
(würde also auf einem 64-Bit-Rechner ein Binärprogramm für 32 Bit erzeugen)
Aum meinem Heimatrechner läuft ein 32-Bit-System (Ubuntu), auf meinem Server 64-Bit (Debian). Während ich problemlos auf beiden Rechnern Binärcode für Windows erzeugen kann (der übrigens auf beiden Prozessorvarianten läuft), klappt das Cross-Compilen mit Linux nicht.
Ich erhalte folgende Fehlermeldung:
1 2 3 4 | In file included from /usr/include/stdio.h:28:0, from Programm.c:1: /usr/include/features.h:323:26: fatal error: bits/predefs.h: Datei oder Verzeichnis nicht gefunden compilation terminated. |
Das Programm ist ein Testprogramm, das nichts anderes tun soll, als eine Textzeile auszugeben.
Was muß ich anders machen, um das gewünschte Ergebnis zu erreichen?
Vielen Dank für Rat und Hilfe!
Feuerrabe