QT5 error: cannot find -lGL

遇到的问题

今天在Debian上安装Qt5.7.1时遇到运行Qt自带测试程序提示error: cannot find -lGL。错误信息提示找不到OpenGL相关的库,楼主之前在Ubuntu上装过没有遇到类似的问题。最后总结了下原因主要是因为Qt5.0默认会将OpenGL加入工程,但是有的机器上没有安装OpenGL。解决方案就是在当前机器上安装OpenGL。


安装步骤

1、安装基本的编译环境

$ sudo apt-get install build-essential 


2、安装OpenGL库

$sudo apt-get install libgl1-mesa-dev


3、安装OpenGL Utilities(基于OpenGL库的一个工具箱,不一定需要安装)

$sudo apt-get install libglu1-mesa-dev 


4、安装OpenGL Utility ToolKit(建立在OpenGL Utilities上的工具箱,不一定需要安装)

$sudo apt-get install libglut-dev 

可能遇到的问题:

    shell提示:正在读取软件包列表... 完成正在分析软件包的依赖关系树       

    正在读取状态信息... 完成      

 E: 未发现软件包 libglut-dev

解决方案:

使用$sudo apt-get install freeglut3-dev 命令

代替

$sudo apt-get install libglut-dev 命令。


网友遇到的问题

另外一个会导致报这个错误的原因是安装了OpenGL库,但是路径不对。楼主自己是没有遇到这类问题,还是在这里也Mark一下防止以后遇到类似的问题。

$ locate libGL
/usr/lib/i386-linux-gnu/mesa/libGL.so.1
/usr/lib/i386-linux-gnu/mesa/libGL.so.1.2.0
/usr/lib/x86_64-linux-gnu/libGLEW.so.1.10
/usr/lib/x86_64-linux-gnu/libGLEW.so.1.10.0
/usr/lib/x86_64-linux-gnu/libGLEWmx.so.1.10
/usr/lib/x86_64-linux-gnu/libGLEWmx.so.1.10.0
/usr/lib/x86_64-linux-gnu/libGLU.so.1
/usr/lib/x86_64-linux-gnu/libGLU.so.1.3.1
/usr/lib/x86_64-linux-gnu/mesa/libGL.so.1
/usr/lib/x86_64-linux-gnu/mesa/libGL.so.1.2.0
/usr/lib/x86_64-linux-gnu/mesa-egl/libGLESv2.so.2
/usr/lib/x86_64-linux-gnu/mesa-egl/libGLESv2.so.2.0.0
$ sudo ln -s /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1 /usr/lib/libGL.so

locate 命令用于查找OpenGL库所在路径;

 ln [参数][源文件或目录][目标文件或目录]   

命令/usr/lib/x86_64-linux-gnu/mesa/libGL.so.1文件创建软链接/usr/lib/libGL.so,如果/usr/lib/x86_64-linux-gnu/mesa/libGL.so.1丢失,/usr/lib/libGL.so将失效。


  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值