Ubuntu18.04下解決Qt出現qt.qpa.plugin:Could not load the Qt platform plugin “xcb“問題


Ubuntu18.04下解決Qt出現qt.qpa.plugin:Could not load the Qt platform plugin "xcb"問題

問題描述

安裝Qt5.15.0后,在運行測試用例時彈出錯誤:

qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.

Available platform plugins are: eglfs, linuxfb, minimal, minimalegl, offscreen, vnc, xcb.

Aborted (core dumped)

根據問題描述,雖然能夠找到但是不能加載Qt平台插件“xcb”,雖然接下來又說重新安裝可能能夠解決,這個可能的話,還是盡量作為最下的選擇吧。

定位問題

修改配置文件~/.bashrc:

$ vim ~/.bashrc

在最末尾添加如下語句,會在qtcreator啟動時,列出詳細的錯誤提示。

export QT_DEBUG_PLUGINS=1

如下:
修改配置文件
保存退出編輯,使配置文件生效:

$ source ~/.bashrc

啟動qtcreator會彈出如下詳細錯誤信息:
詳細錯誤信息
在打印的錯誤信息的最下面,找到了引發錯誤的真正原因:
引發錯誤的真正原因
也就是Qt動態鏈接庫的問題,當加載libqxcb.so庫的時候,還需要加載libxcb-xinerama庫。
切換到報錯libxcb.so所在目錄:

#替換為自己的報錯目錄
$ cd /home/brainiac/Qt/Tools/QtCreator/lib/Qt/plugins/platforms/

運行ldd libqxcb.so,查看關聯內容:

$ ldd libqxcb.so

查看依賴關系
發現不存在libxcb-xinerama.so.0庫。

解決方法

安裝libxcb-xinerama庫:

#如果還存在其他依賴庫沒有安裝,也一並安裝。
$ sudo apt-get install libxcb-xinerama0

安裝完成后,再次查看關聯內容,發現已經修復問題:

$ ldd libqxcb.so

問題解決
再次運行qt程序,就可以正常運行了。
正常運行

后記

又可以愉快的coding了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM