CentOS 安装QT 遇到(qt.qpa.plugin: Could not load the Qt platform plugin "xcb" )

说起来我都不信,再linux下安装个QT 这么难吗?重装了几次系统,醉了,下面说一下我遇到的问题:

  • round1:

安装完成后,执行qtcreator 提示: 

Linux qt "qt.qpa.plugin: Could not load the Qt platform plugin "xcb" "

搜素一通,配置输出错误日志详细信息
sudo gedit ~/.bashrc文件中添加如下语句:

export QT_DEBUG_PLUGINS=1
export LD_LIBRARY_PATH=/opt/Qt5.13.1/5.13.1/gcc_64/lib:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=/opt/Qt5.13.1/Tools/QtCreator/lib:$LD_LIBRARY_PATH

后两句是从把链接库路径加到搜索路径中,不知道有没有生效。

此处重点强调其实第一句话,加上此配置项后,QtCreator就会输出大量信息,这样我们,才能有的放矢,一步步解决问题/
使改动生效

sudo source  ~/.bashrc
  • round2:

再次从命令行中执行qtcreator程序,此时输出一大堆日志信息,跳到最后发现提示:
    Cannot load library /opt/Qt5.13.1/Tools/QtCreator/lib/Qt/plugins/platforms/libqxcb.so: (libxkbcommon-x11.so.0: 无法打开共享对象文件: 没有那个文件或目录)
QLibraryPrivate::loadPlugin failed on "/opt/Qt5.13.1/Tools/QtCreator/lib/Qt/plugins/platforms/libqxcb.so" : "Cannot load library /opt/Qt5.13.1/Tools/QtCreator/lib/Qt/plugins/platforms/libqxcb.so: (libxkbcommon-x11.so.0: 无法打开共享对象文件: 没有那个文件或目录)"


 很明显动态库加载失败,首先查看是否存在此文件,存在,然后查看其依赖库是否都能够成功找到:

ldd  /opt/Qt5.13.1/Tools/QtCreator/lib/Qt/plugins/platforms/libqxcb.so

此时发现有与libxkbcommon相关的库找不到,ok百度一下,需要安装此库,用yum安装:

yum -y install libxkbcommon-x11-devel
  • round 3 缺少dbus

继续执行还是有错误,跳到最后一行 还是有错误,提示dbus 出错

/opt/Qt5.13.1/Tools/QtCreator/bin/qtcreator: relocation error: /opt/Qt5.13.1/Tools/QtCreator/lib/Qt/plugins/platforms/../../lib/libQt5DBus.so.5: symbol dbus_message_set_allow_interactive_authorization, version LIBDBUS_1_3 not defined in file libdbus-1.so.3 with link time reference

ok继续 安装dbus库

yum -y install dbus-devel

round4

继续执行,此时提示如下错误

opt/Qt5.13.1/Tools/QtCreator/bin/qtcreator: symbol lookup error: /opt/Qt5.13.1/Tools/QtCreator/lib/Qt/plugins/platforms/../../lib/libQt5XcbQpa.so.5: undefined symbol: FT_Get_Font_Format
百度一下,需要安装freetype-devel,欧克

yum -y install freetype-devel

总而言之,一切从配置此环境变量开始export QT_DEBUG_PLUGINS=1,大家遇到的问题可能与我不同,但是有了输出信息就可以一步步的解决了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章