Qt错误:在搜索-lGL时跳过不兼容的/usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../libGL.so

时间:2016-06-21 08:57:29

标签: qt qt5

Qt 5.7.0 GCC 4.9.1 我在安装Qt之后创建了一个简单的小部件项目(没有编写任何单个代码,没有更改设置,只将一些控件拖到表单中)并进行了测试编译。我收到了错误消息:

:-1: error: skipping incompatible /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../libGL.so when searching for -lGL
:-1: error: skipping incompatible /lib/libGL.so when searching for -lGL
:-1: error: skipping incompatible /usr/lib/libGL.so when searching for -lGL 
:-1: error: cannot find -lGL
:-1: error: collect2: error: ld returned 1 exit status

我认为它试图在我的64位机器上链接到32位OpenGL。 /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../libGL.so确实位于/ usr / lib / libGL中。我认为64位版本是/ usr / lib64 / libGL中的版本。如何更改链接路径以便链接到正确的库?

2 个答案:

答案 0 :(得分:0)

这就是我解决这个问题的方法。

  1. locate libGL.so并找到正确的64位版本(我使用了最新版本);
  2. 在Qt lib路径中创建一个链接:ln -s /usr/lib64/libGL.so.352.79 ~/Qt/5.7/gcc_64/lib/libGL.so

答案 1 :(得分:0)

似乎您缺少编译32位二进制文​​件所需的库。

尝试运行:sudo yum install glibc-devel.i686 libgcc.i686