centos7.5解决编译QT插件生成少的问题,包括libqxcb.so、stbtGdkL.so、stzhkvzO.so。;
也是各种查找资料,网上的查过,包括yum安装xcb库等但都没解决问题。
我最终是想使用qtcreator编译exe然后运行。所以这里做一个简单记录,没说清楚的留言沟通:
1、问题1:解决GCC版本太老的问题。这个是首先解决的问题,我是通过centos的devtoolset升级的。
2、问题2:使用的qtcreator版本太高的问题。通过run包安装的qtcreator6,但是启动失败,报却库,我直接降级版本5,搞定。
3、问题3:编译qt库缺少libqxcb.so、stbtGdkL.so、stzhkvzO.so,尤其libqxcb.so直接不能启动。这里主要系统已经安装的libxcb版本太低导致。类似的问题,查看源码下面的redme,如下如:
然后需要便于libxcb版本,我这里编译的libxcb1.23,这要先编译xcb-proto,这个网上能找到如何编译的方法,不再赘述。
编译完毕后,最后:./configure -prefix=/etc/qt5/ -xcb,成功
ps:这里有个小细节,由于之前编译错误,你这里重新编译的时候一定要清除make下面的log和cache,要不一直报之前烦人的“具体错误:ERROR: Feature 'xcb' was enabled, but the pre-condition 'features.thread && features.xkbcommon && libs.xcb' failed”错误。
我这里卡了很久,以为是库编译的问题。其实环境已经ok了。
4、最后qt设置qmake对应的,然后编译,run