我正在尝试在 Linux Mint 17.2 中编译 main.c
代码和汇编代码 pstring.s
。
当我尝试链接代码时,gcc
返回:
/usr/bin/ld: 找不到 -lgcc
。
有谁知道我需要更改什么才能使其正常工作?
gcc -m32 -g -c -o pstring.o pstring.s
shay@shay-Latitude-E6410~/workspace1/targ3Mivne $ gcc -m32 -g -c -o main.o main.c
shay@shay-Latitude-E6410 ~/workspace1/targ3Mivne $ gcc -m32 -g -o a.out main.o pstring.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
最佳答案
尝试使用命令安装这些包 sudo apt-get install gcc-multilib g++-multilib
如果没有 multilib,则 32 位版本的 libgcc 不可用。 64 位代码无法链接到 32 位代码,这是此问题中出现错误的原因。 ——迈克尔·佩奇
关于c -/usr/bin/ld : cannot find -lgcc - Error in the linkage of assembly,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34219248/