/usr/bin/ld: cannot find -lxxx

本文介绍了解决因缺少对应库文件而导致的问题的方法。通常这类问题由系统未安装相应库、库版本不符或符号链接错误造成。文章提供了检查符号链接正确性的步骤,并指导如何通过安装缺失的库来解决问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这个是缺少对应的函式库文件。
其命名规则是:lib+库名(即xxx)+.so/a.

会发生这样的原因有以下三种情形:

  • 系统没有安装相对应的lib

  • 相对应的lib版本不对

  • lib的symbolic link 不正确,没有连结到正确的函式库文件。

解决方法:

  (1)先判断在/usr/lib 下的相对应的函式库文件 的symbolic link 是否正确
  若不正确改成正确的连结目标即可解决问题。
  

cd /usr/lib64
//如果是symbolic link不正确,改名即可,比如
ln -s libXtst.so.6 libXtst.so

(2)若不是symbolic link 的问题引起,而是系统缺少相对应的lib安装lib即可解决。
(3)如何安装缺少的lib:(下面是针对Cent OS系统,函式库文件是-devel ,其他系统是-dev)
可以使用apt安装:
apt-get install libxxx-devel
如果没有安装apt,可以使用yum安装:
yum install lixxx-devel

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值