鄭重聲明:本文是筆者網上轉載,筆者稍有修改,所有權歸原文作者!
原文鏈接: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"