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中的版本。如何更改链接路径以便链接到正确的库?
答案 0 :(得分:0)
这就是我解决这个问题的方法。
locate libGL.so
并找到正确的64位版本(我使用了最新版本); 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