2014-03-03 48 views
7

這是我的makefile:如何處理鏈接錯誤:錯誤無法找到-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 

,這是終端輸出:

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 הלקת 

能有人給我解釋一下什麼是lgcc和如何解決這個問題?

+6

你應該安裝'gcc-multilib'軟件包 –

+0

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

+0

謝謝,它的工作! – kitsuneFox

回答

相關問題