郑重声明:本文是笔者网上转载,笔者稍有修改,所有权归原文作者!
原文链接:http://blog.sina.com.cn/s/blog_67bbb71101010tto.html
用g++编译C++程序时显示出:
/usr/lib/ld: cannot find -lc
/usr/lib/ld: cannot find -lgcc_s
/usr/lib/ld: cannot find -lm
/usr/lib/ld: cannot find -lgcc_s
的错误。在网上看了很多中关于/usr/lib/ld: cannot find -lXXX的解法,但是大同小异,没有很具体的讲解。所以把我的解决方法记录一下。
解决/usr/lib/ld: cannot find -lc:
1. 在系统中搜索 libc.so 文件
sudo find / -name libc.so
搜索到一个libc.so,在目录/usr/lib/i386-linux-gnu下面。
2.建立链接:
sudo ln -sv /lib/i386-linux-gnu/libc.so /usr/lib/libc.so
解决/usr/lib/ld: cannot find -lm:
1. 在系统中搜索 libm.so 文件
sudo find / -name libm.so
搜索出一个 libm.so ,在/usr/lib/i386-linux-gnu下面。
2.建立链接:
sudo ln -sv /lib/i386-linux-gnu/libm.so /usr/lib/libm.so
解决/usr/lib/ld: cannot find -lgcc_s:
1. 在系统中搜索 libgcc_s.so 文件
sudo find / -name libgcc_s.so
同样在/usr/lib/i386-linux-gnu下面搜索到了libgcc_s.so.1。
2.建立链接:
sudo ln -sv /lib/i386-linux-gnu/libgcc_s.so.1 /usr/lib/libgcc_s.so
当某一个链接建立成功的时候,系统显示是类似这样的:
"libgcc_s.so" -> "/lib/i386-linux-gnu/libgcc_s.so.1"