在进行./configure时,出现错误:
Basic XLib functionality test failed! You might need to modify the include and library search paths by editing............
解决方法:
yum install libX11-devel libXext-devel libXtst-devel
在使用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
这里分情况:
要么是库文件 Xrender 不存在,通过 yum install libXrender-dev 安装;
要么是库文件存在,链接错误,通过建立软连接解决问题;
这里遇到是第二种情况,进入 /usr/lib64 目录,建立软连接:ln -s libXrender.so.1 libXrender.so 即可。
已经有 libXrender.so.1 文件了,为什么还报链接错误呢,这里涉及到链接库的linkname、realname等概念,请参考下面的文章:
------------------------------------------ 分割线 ---------------------------------------------------------------
特定的os版本安装指定的qt版本,可能会出现适配或兼容性问题,导致编译错误。
比如在在centos 7.9.2009 上面编译安装qt4.7.4后,编译qt项目会报错。
所以,比较合适的安装方式是通过 yum install qt-* 命令安装与当前os版本相适配的qt版本。
执行上面的命令安装后,指定qmake为新安装的4.8.7后,编译qt项目不再报错,但是不知道为什么,默认没有安装qt-creator。
执行 yum install -y qt-creator 命令安装qt-creator时,提示:
没有可用的软件包。错误:无需任何处理。
这种情况下,先执行命令:yum install epel-release , 然后就可以安装了。
关于epel-release,可以参考下面的链接: