【转】关于usr/bin/ld: cannot find -lxxx问题总结
原文网址:http://eminzhang.blog.51cto.com/5292425/1285705
通过find或者locate指令定位到链接文件,查看链接文件是否正确的指向了我们希望的lib,如果不是,用 ln -sf */libxxx.so.x */libxxx.so 指令修改它。
编译程序遇到:/usr/lib64/gcc/x86_64-suse-linux/4.3/../../../../x86_64-suse-linux/bin/ld: cannot find -lxml2
解决/usr/bin/ld: cannot find -lxxx 问题
问题:
在linux环境编译应用程式或lib的source code时常常会出现如下的错误讯息:
/usr/bin/ld: cannot find -lxxx
这些讯息会随着编译不同类型的source code 而有不同的结果出来如:
/usr/bin/ld: cannot find -lc
/usr/bin/ld: cannot find -lltdl
/usr/bin/ld: cannot find -lXtst
其中xxx即表示函式库文件名称,如上例的:libc.so、libltdl.so、libXtst.so。
其命名规则是:lib+库名(即xxx)+.so。
会发生这样的原因有以下三种情形:
1 系统没有安装相对应的lib
2 相对应的lib版本不对
3 lib(.so档)的symbolic link 不正确,没有连结到正确的函式库文件(.so)
解决方法:
(1)先判断在/usr/lib 下的相对应的函式库文件(.so) 的symbolic link 是否正确,若不正确改成正确的连结目标即可解决问题。
(2)若不是symbolic link 的问题引起,而是系统缺少相对应的lib安装lib即可解决。
(3)如何安装缺少的lib:
以上面三个错误讯息为例:
错误1缺少libc的LIB
错误2缺少libltdl的LIB
错误3缺少libXtst的LIB
以Ubuntu为例:
先搜寻相对应的LIB再进行安装的作业如:
apt-cache search libc-dev
apt-cache search libltdl-dev
apt-cache search libXtst-dev
实例:
在进行输入法gcin的Source Code的编译时出现以下的错误讯息:
/usr/bin/ld: cannot find -lXtst
经检查后发现是:
lib(.so档)的symbolic link 不正确
解决方法如下:
cd /usr/lib
ln -s libXtst.so.6 libXtst.so
如果在/usr/lib的目录下找不到libXtst.so 档,那么就表示系统没有安装libXtst的函式库。
解法如下:
apt-get install libxtst-dev
【转】关于usr/bin/ld: cannot find -lxxx问题总结相关推荐
- 解决/usr/bin/ld: cannot find -lxxx
通常在软件编译时出现的usr/bin/ld: cannot find -lxxx的错误,主要的原因是库文件并没有导入的ld检索目录中. 解决方式: 1.确认库文件是否存在,比如-l123, 在/usr ...
- Linux系统中提示/usr/bin/ld: cannot find -lxxx错误的通用解决方法
Linux系统中提示/usr/bin/ld: cannot find -lxxx错误的通用解决方法 参考文章: (1)Linux系统中提示/usr/bin/ld: cannot find -lxxx错 ...
- /usr/bin/ld: cannot find -lxxx错误的通用解决方法
Linux系统中提示/usr/bin/ld: cannot find -lxxx错误的通用解决方法 在linux环境编译应用程式或lib的source code时常常会出现如下的错误讯息,代码如下: ...
- linux查看ld文件,Linux下库文件的设置 (/usr/bin/ld: cannot find -lxxx 的解决办法)
/usr/bin/ld: cannot find -lhdf5 这表示找不到库文件 libhdf5.so,若是其它库文件,则是 cannot find -lxxx 了,其中 xxx 是库文件的名字. ...
- /usr/bin/ld: cannot find -lxxx 问题 解决方法总结
很多程序都要部署到linux下来运行,遇到了挺多问题,昨天就集中性遇到了 在编译应用时,遇到了 /usr/bin/ld: cannot find -lxxx 这种情况是系统找不到对应的库文件,其中,- ...
- 转载 :make报错:/usr/bin/ld: cannot find -lXXX
/usr/bin/ld: cannot find -lxxx问题总结 linux下编译应用程序常常会出现如下错误: /usr/bin/ld: cannot find -lxxx 意思 ...
- 【Bugfix系列】/usr/bin/ld: cannot find -lxxx 的解决办法
DATE:2021.9.23 文章目录 1.前言 2.参考 3.解决方案 3.1.安装此库文件和相关软件 3.2.将库文件所在路径添加到gcc的搜索路径 3.2.1.使用 /etc/ld.so.con ...
- Qt5.2编译时出现/usr/bin/ld: cannot find -lxxx 错误
在Linux中,lib库的命名规则为:lib+库名+.so 而-lxxx,其中xxx表示lib库的名字. 出现"/usr/bin/ld: cannot find -lxxx" 错误 ...
- 解决usr/bin/ld: cannot find -lxxx问题
linux下编译应用程序常常会出现如下错误: /usr/bin/ld: cannot find -lxxx 意思是编译过程找不到对应库文件.其中,-lxxx表示链接库文件 libxxx.so. 注:有 ...
最新文章
- 程序化广告(1):程序化广告概述
- NSCache和NSURLCache网络缓存优化
- ESFramework网络通信框架 4.0 性能测试
- NPashaP的二分图源码部分
- 什么是“软件架构设计”(推荐)
- android progressbar动态,如何在android中动态启动和完成progressBar
- 一名拿到阿里offer的Java程序员分享三轮面试经验
- mysql 错误 0152_SP2-1503 SP2-0152 错误解决
- jzoj6826-[2020.10.17提高组模拟]隔膜【博弈论】
- Apaceh配置httpd-vhosts虚拟主机
- qmail 发邮件故障
- 对象取值操作Object.values()
- python发送短信验证码(互亿无线)
- 知识图谱构建通俗理解
- 中国人工智能发展的现状
- 安装intel wifi link 5100 AG无线网卡驱动程序,iwlwifi-5000-5.ucode中的readme文件
- 电脑的锁屏密码忘记了怎么办?
- 最新的三星android版本号,三星率先公布Android 12/13升级机型名单,可惜S9/Note9被抛弃...
- Java SE菜鸟之泛型
- 开源App动画Lottie
热门文章
- C#中操作Word(8)—— 向Word中插入图表的三种方法(一)
- Entrust Datacard宣布与IBM Security开展目标远大的合作,以助力确保移动工作人员安全
- mongodb 分组获取最新一条的数据
- 【JS】通过JS实现超市小票打印功能——ActiveX控件
- 商业银行相关不良资产监管指标大全
- C语言结构体学生基本资料,用结构体定义10个学生基本信息
- epub文件是什么文件?用这个方法直接在浏览器打开
- 语言模型(马尔可夫模型,n元语法)
- javaEE核心框架之 Mybatis ( 一 )
- Markdown 教程: 1 数学公式和特殊符号