2014-03-03 6 views
7

dies mein Make-Datei finden:Wie mit Linker-Fehler umgehen: Fehler nicht -lgcc

task0 : main.o numbers.o add.o 
     gcc -m32 -g -Wall -o task0 main.o numbers.o add.o 

main.o : main.c 
     gcc -g -Wall -m32 -ansi -c -o main.c 
numbers.o : numbers.c 
      gcc -g -Wall -m32 -ansi -c -o numbers.c 
add.o: add.s 
     nasm -g -f elf -w+all -o add.o add.s 
clean : 
     rm -f *.o task0 

und dies ist die Terminal-Ausgabe:

gcc -m32 -g -Wall -o task0 main.o numbers.o add.o 
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/4.8/libgcc.a when  searching for -lgcc 
/usr/bin/ld: cannot find -lgcc 
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/4.8/libgcc_s.so when searching for -lgcc_s 
/usr/bin/ld: cannot find -lgcc_s 
collect2: error: ld returned 1 exit status 
make: *** [task0] 1 הלקת 

mir jemand erklären kann, was lgcc ist und wie das zu beheben?

+6

Sie sollten das 'gcc-multilib' Paket installieren –

+0

http://askubuntu.com/questions/250910/cross-compilation-issues-with-gcc-g – Jekyll

+0

Danke, es hat funktioniert! – kitsuneFox

Antwort