编译的时候出现 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)
分类:
Linux
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
· SQL Server 2025 AI相关能力初探