本文主要是介绍/usr/bin/ld: cannot find -lxxx的错误,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
通常在软件编译时出现的usr/bin/ld: cannot find -lxxx的错误或者…so undefine xxxx,主要的原因是库文件并没有导入的ld检索目录中。
解决方式:
1. 确认库文件是否存在,比如-l123, 在/usr/lib, /usr/local/lib,或者其他自定义的lib下有无lib123.so, 如果只是存在lib123.so.1,那么可以通过sudo ln -sv lib123.so.1 lib123.so,建立一个连接重建lib123.so(快捷方式).
2. 检查sudo gedit /etc/ld.so.conf中的库文件路径是否正确,如果库文件不是使用系统路径,/usr/lib, /usr/local/lib, 那么必须在文件中加入.
3. sudo ldconfig 重建ld.so.cache文件,ld的库文件检索目录存放文件。尤其刚刚编译安装的软件,必须运行ldconfig,才能将新安装的库文件导入ld.so.cache.
4. 测试,sudo gcc -l123 --verbose.
这篇关于/usr/bin/ld: cannot find -lxxx的错误的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!