qt.qpa.plugin: Could not find the Qt platform plugin “xcb“ in ““ 详细解决办法

qt.qpa.plugin: Could not find the Qt platform plugin “xcb“ in ““ 详细解决办法

定位问题

可以先在终端运行export QT_DEBUG_PLUGINS=1,再打开刚才报错的程序,可以看到相应的报错点,
如果是如标题Could not found the Qt platform plugin “Xcb”in“”,则是不存在,或者说查找的目录不存在libxcb.so,对应第一种情况,没有xcb。
如果是Could not found or load the Qt platform plugin “xcb”,那么问题可能是存在xcb,但是依赖库出现问题

解决办法

情况一:could not found

有两种可能,
1、如果你电脑上的qt是自己源码编译的
那么也有两种可能:
1、有可能是环境变量没有配置好,这个自行百度如何配置,这种情况一般不光xcb,而是一个plugins也找不到。

2、可能是在编译的时候就没有输出qxcb,这种一般是在相应的文件夹下根本没有libxcb.so这个文件。这时候比较麻烦,需要安装sudo apt install xcb后重新编译qt,如果对qt的版本没有固定要求的话也可以使用sudo apt install qtcreator build-essential 来安装一个qt,这个qt版本可能稍微老一点,安装完后记得把之前自己设置的关于自己编译的qt的环境变量和libconf全部注释掉,主要是~/.bashrc里面的LD_LIBRARY_PATH和/etc/ld.conf.so.d里面的配置。在这完成之后重新打开终端,不重新打开终端source .bashrc理论上也可以。

sudo apt install qtcreator build-essential

2、如果你的qt是用sudo apt安装的
那么大概率就只是xcb没有装,sudo apt install xcb就行了

sudo apt install xcb

情况二 could not load

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)

这种情况一般是xcb的依赖库有问题了

ldd path/libxcb.so | grep 'not found' 
# ldd 后面的是你libxcb.so的目录,该命令的意思是列出libxcb的依赖库,然后查找出not found的库

找出来是哪些库以后安装这些相应的库就行,一般库名都是去掉前面的lib和后面的.so,如果不是自己百度一下文件名

基本涵盖了出现这个error的几种情况,如果试过了还是无效,那另请高明吧哈哈哈哈

  • 8
    点赞
  • 47
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值