编译的时候出现 usr/bin/ld: cannot find -lxxx 的错误

 

比如错误为: usr/bin/ld: cannot find -labc

首先要明白的是 labc 代表的是 libabc.so

明白了这个之后,我们就知道了问题是:在编译的过程中,需要 libabc.so 库

而系统又找不到这个库

解决方法是,手动找到这个库。

你可能会发现,系统中可能已经有 libabc.so 但是不在默认查找路径(/usr/lib之类的路径),而是在你自己随便放的一个路径里。

或者是你没找到这个库,但是找到类似 libabc.so.1.0 这种带版本号的库。

如果是上述两种情况,那就好办了,因为本质上你的系统是存在这个库的,只是路径不对,或者是名字不对。

 

所以使用软链接的方法 给链接到正确位置:

1
sudo ln -s /这个库的路径/libabc.so.1.0 /usr/lib/libabc.so

  

然后再编译即可(可以直接接着上次出错的地方,再make)

posted @   立冬以东  阅读(20491)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
· SQL Server 2025 AI相关能力初探
点击右上角即可分享
微信分享提示