使用make命令编译Qt原码时出现了 /usr/bin/ld: cannot find -lXrender 问题:

/usr/bin/ld: cannot find -lXrender
        collect2: ld 返回 1
        make[1]: *** [../../../../lib/libQtWebKit.so.4.7.4] 错误 1
        make[1]:正在离开目录 `/home/Qt/qt-everywhere-opensource-src-4.7.4/src/3rdparty/webkit/WebCore'
        make: *** [sub-webkit-make_default-ordered] 错误 2

其解决方法如下:

执行sudo apt-get install libXrender-dev命令,安装相应的lib文件。

所以最好在编译Qt原码前先执行以下命令:

sudo apt-get install libglib2.0-dev libSM-dev libxrender-dev libfontconfig1-dev libxext-dev

sudo apt-get install libglui-dev

安装相应的lib文件,防止编译出错。

再上网搜索一下,发现在Linux下编译应用程序常常会出现如下错误:
/usr/bin/ld:cannot find -lxxx
意思是编译过程找不到对应库文件。其中-lxxx表示链接库文件libxxx.so。

一般出现这种错误有以下几种原因:
1.系统缺乏对应的库文件
2.库文件版本不对应
3.库文件链接错误
4.库文件路径设置不正确

对于前2种情况,可以通过下载安装lib来解决:
sudo apt-get install libxxx-dev(上面编译Qt的情况大多是这样)


而对于第3种情况,通过find或者locate命令定位到链接文件,查看链接文件是否正确的指向了lib文件。如果不是,用 ln -sf */libxxx.so.x */libxxx.so 命令修改。

对于最后一种情况,可以到/etc/ld.so.conf.d目录下,修改其中任意一份conf文件(也可自建conf),将lib所在的目录写进去,然后在终端输入ldconfig更新缓存。

原:http://blog.csdn.net/makuiyu/article/details/7017368

Qt常见make编译错误:/usr/bin/ld:cannot find -lxxx相关推荐

  1. 编译错误/usr/bin/ld: cannot find -lz

    转自:http://blog.sina.com.cn/s/blog_4be5711f01015th7.html 编译的时候出现"/usr/bin/ld: cannot find -lz&qu ...

  2. 编译提示“/usr/bin/ld: cannot find -lgflags-shared“错误的解决办法

    先看的这一篇博客: Linux下编译程序/usr/bin/ld: cannot find -l*错误的解决方法 一般的出现 /usr/bin/ld: cannot find -lxxx 这种错误的时候 ...

  3. Qt5.2编译时出现/usr/bin/ld: cannot find -lxxx 错误

    在Linux中,lib库的命名规则为:lib+库名+.so 而-lxxx,其中xxx表示lib库的名字. 出现"/usr/bin/ld: cannot find -lxxx" 错误 ...

  4. Linux系统中提示/usr/bin/ld: cannot find -lxxx错误的解决方法

    报错说明 /usr/bin/ld: cannot find -lxxx 这些讯息会随着编译不同类型的source code 而有不同的结果出来如: /usr/bin/ld: cannot find - ...

  5. /usr/bin/ld: cannot find -lxxx错误的通用解决方法

    Linux系统中提示/usr/bin/ld: cannot find -lxxx错误的通用解决方法 在linux环境编译应用程式或lib的source code时常常会出现如下的错误讯息,代码如下: ...

  6. /usr/bin/ld: cannot find -lxxx的错误

    转载自 参考 通常在软件编译时出现的usr/bin/ld: cannot find -lxxx的错误或者-so undefine xxxx,主要的原因是库文件并没有导入的ld检索目录中. 解决方式: ...

  7. Linux系统中提示/usr/bin/ld: cannot find -lxxx错误的通用解决方法

    Linux系统中提示/usr/bin/ld: cannot find -lxxx错误的通用解决方法 参考文章: (1)Linux系统中提示/usr/bin/ld: cannot find -lxxx错 ...

  8. 解决/usr/bin/ld: cannot find -lxxx

    通常在软件编译时出现的usr/bin/ld: cannot find -lxxx的错误,主要的原因是库文件并没有导入的ld检索目录中. 解决方式: 1.确认库文件是否存在,比如-l123, 在/usr ...

  9. linux查看ld文件,Linux下库文件的设置 (/usr/bin/ld: cannot find -lxxx 的解决办法)

    /usr/bin/ld: cannot find -lhdf5 这表示找不到库文件 libhdf5.so,若是其它库文件,则是 cannot find -lxxx 了,其中 xxx 是库文件的名字. ...

最新文章

  1. 在GitHub上管理项目
  2. vue 使用font-awesome 只需两步
  3. .net 服务器端自定义分页控件 简单示例
  4. 三元运算符 在数据绑定中的使用
  5. 【JS 逆向百例】W店UA,OB反混淆,抓包替换CORS跨域错误分析
  6. python twisted和flask_Python高效开发实战——Django、Tornado、Flask、Twisted(第2版)
  7. 剑指offer38题
  8. 前端新人如何有效地提高自己
  9. 28、深入浅出MFC学习笔记,View功能的加强和重绘效率的提高
  10. html position属性作用,CSS学习之浅谈position属性
  11. 使SWT/JFace支持跨平台
  12. fgui的ui管理框架_FGUI,UGUI在ET框架上的使用以及区别
  13. 桌宠java_桌宠 下了Java还是说没法登上去 PHILIPS 电脑
  14. hd620显卡驱动 linux,倍控工控机i7 7500U PVE下核显HD620 HDMI直通成功
  15. 如何拿下最适合晚上睡不着看的网站?建议收藏!
  16. background属性用法总结
  17. Win10 如何修改C:\Users\下的用户名
  18. 一起Talk Android吧(第三百一十七回:Android中的虚拟按键)
  19. 匹配 网络 Q值 带宽
  20. 数量X金额=总额 再例如X抽成0.08等出抽成金额180,大师们帮忙改一下下,万分感谢!

热门文章

  1. VBA锁定单元格并记录单元格修改日志无bug篇
  2. selenium之反反爬虫
  3. 福利群怎么引流?微信群引流技巧
  4. Python可视化案例:Mutual Funds和ETFs对比
  5. kanzi 粒子插件
  6. vs2019配置完qt出现问题解决
  7. 基于脱敏数据,使用huggingface的Transformers预训练模型
  8. Markdown KaTex 积分符号
  9. 外部js文件中调用pinia时,报错getActivePinia was called with no active Pinia. Did you forget to install pinia?
  10. android------之高德地图实现定位和3D地图显示