关于qt缺少xcb问题终极解决办法

  • 问题背景
    • 系统环境
    • qt版本
    • 问题描述
  • 解决过程
    • 走的弯路
    • 解决问题的关键
  • 总结

问题背景

系统环境

中标麒麟,龙芯平台

qt版本

qt5.6

问题描述

原来的Qt程序是qt5.3.2版本,但是由于各种原因,升级成了qt5.6版本。
编译完成后放在其他机器上报错缺少xcb,报错如下:

This application failed to start because it could not find or load the Qt platform plugin "xcb"
in "".Available platform plugins are: eglfs, linuxfb, minimal, minimalegl, offscreen, xcb, xcb.Reinstalling the application may fix this problem.

解决过程

走的弯路

几乎尝试百度到的各种方式,无非就这么几种。
1、运行目录下添加platform文件夹,文件夹里放上libqxcb.so。
2、指定环境变量,具体什么变量记不清楚了。
3、在运行目录下,添加
libQt5Core.so
libQt5Gui.so
libQt5Network.so
libQt5Widgets.so
libQt5DBus.so
libicuuc.so
libicudata.so
libicui18n.so

最终结果还是不行。

解决问题的关键

设置环境变量 export QT_DEBUG_PLUGINS=1
加了这个环境变量,让我看到了QT程序加载的过程,看到了详细的报错信息。
最后一部分是这样的:


Found metadata in lib /usr/lib64/qt5/plugins/platforms/libqxcb.so, metadata=
{"IID": "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.3","MetaData": {"Keys": ["xcb"]},"className": "QXcbIntegrationPlugin","debug": false,"version": 329218
}Found metadata in lib /opt/dky/SASClient/bin/platforms/libqxcb.so, metadata=
{"IID": "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.3","MetaData": {"Keys": ["xcb"]},"className": "QXcbIntegrationPlugin","debug": false,"version": 329216
}QLibraryPrivate::loadPlugin failed on "/usr/lib64/qt5/plugins/platforms/libqxcb.so" : "Cannot load library /usr/lib64/qt5/plugins/platforms/libqxcb.so: (/lib64/libQt5XcbQpa.so.5: symbol _ZNK11QFontEngine6handleEv, version Qt_5_PRIVATE_API not defined in file libQt5Gui.so.5 with link time reference)"
This application failed to start because it could not find or load the Qt platform plugin "xcb"
in "".Available platform plugins are: eglfs, linuxfb, minimal, minimalegl, offscreen, xcb, xcb.Reinstalling the application may fix this problem.

看到问题没?
/lib64/libQt5XcbQpa.so.5
这个库有问题。
于是我把libQt5XcbQpa.so,也放在运行目录下。
奇迹发生了,一切OK了!!!

总结

网上大部分搜到的解决办法,可能都是基于qt5.6之前的,但是qt5.6之后新加了几个库,所以网上的解决办法搜不到,所以才困扰了我这么久。
这次解决问题的关键在于,添加环境变量:export QT_DEBUG_PLUGINS=1
相信遇到此问题,利用这个方法,都可以很快的定位并解决问题了。
最后,祝大家好运!!!

关于qt缺少xcb问题终极解决办法相关推荐

  1. Qt直接运行生成的exe文件提示“缺少Qt5Core.dll”的解决办法

    Qt直接运行生成的exe文件提示"缺少Qt5Core.dll"的解决办法 [错误描述] 在QtCreator下,程序可以正常运行,但是当关闭QtCreator后,在"de ...

  2. .net4.5对应的安装mysql dll文件的版本_cmd下使用mysql插入中文出现无法退出语句的情况!终极解决办法! 安装mysql详细教程。...

    当你插入中文时遇到这种情况,始终无法退出. 当前数据库:网上下载的奇奇怪怪版本5.5 当前系统win10 当前CMD输入编码utf8 数据库编码utf8 表编码utf8 mysql> inser ...

  3. win8 远程桌面时提示凭证不工作问题的终极解决办法

    原文 win8 远程桌面时提示凭证不工作问题的终极解决办法 环境说明 远程办公电脑(放置于公司.自用办公电脑.win8系统) 远程连接客户机(放置于家中.家庭日常所用.win8系统) 故障现象 最近在 ...

  4. Altium designer原理图导入word文档模糊——终极解决办法

    硬件相关专业的小伙伴在写毕业论文的时候可能会遇到AD原理图导入word后变模糊的情况,经过多方摸索,终于找到一个可行的方法. (1)前情回顾 网上常用的AD原理图导入word方法总结如下: 1. 直接 ...

  5. visio图中包含公式,插入word后公式模糊终极解决办法

    最近被毕业论文支配,各种无力,visio图中包含公式,插入word中公式变得很模糊,根本不能用,网上各种找解决办法都没用,最后无意中一位网友道出了真相 终极解决办法 是visio版本问题,我用的vis ...

  6. Tecplot 360 按教程安装完毕后,弹出“Is your Tecplot 360 EX liense valid?”【终极解决办法】

    Tecplot 360 按教程安装完毕后,弹出"Is your Tecplot 360 EX liense valid?"[终极解决办法] 1. 解决办法总结 参考经典讨论帖:ht ...

  7. Ubuntu设置中修改密码,提示长度太短或太简单【终极解决办法】

    Ubuntu设置中修改密码,提示长度太短或太简单[终极解决办法] 需要root权限才能解决: 方法1: (1)sudo su 切换到root用户 (2)再 passwd <用户名> 方法2 ...

  8. preparing automatic repair怎么解决_单一窗口插卡登录频繁提示安装IC卡控件的终极解决办法...

    单一窗口插入IC卡登录一直失败,并提示安装最新IC卡控件,很多企业表示已经安装了最新版仍然会出现,如下图: 问题:登录"单一窗口"标准版时,页面出现如图1和图2所示的"请 ...

  9. 1067 mysql,mysql免安装版1067错误终极解决办法图文教程

    [从笔记本到pc] 笔记本一直都使用MySQL免安装版5.6.17,使用如下方法安装: 今天把同一个zip包传到pc上,按上面的方法安装居然报1067,按上面方法多次尝试还是不行. 百度,google ...

  10. Disconnected from the target VM, address:xxxx 或者 Process finished with exit code 1 终极解决办法 idea

    这个bug,没有日志,无从下手! 网上找了上100篇文章仍然找不到解决方案! 报错如下图: 终极解决办法: 1.安装jrebel,参考本博主博文 https://blog.csdn.net/u0132 ...

最新文章

  1. python自动退出程序_python异常退出
  2. Xara Designer Pro中文版
  3. INTERSPEECH 2017系列 | 语音识别之语言模型技术
  4. [置顶]C#执行Excel宏模版的方法
  5. SAP Spartacus ConfigInitializerService里的isStable属性
  6. python正则表达式使用
  7. cordova 调用java_Cordova调用原生方法的插件的编写
  8. 腾讯 Github 全球贡献前十;三星可折叠手机售价 1.6 万;OpenTitan 正式开源|极客头条...
  9. Struts,Hibernate,Spring经典面试题收藏(转)
  10. ThinkPhp 更改 BIT 类型的问题
  11. Linux中脚本的使用方法
  12. SQL2008系统统计函数
  13. AOP 实现请求参数打印
  14. 2022-07-17 mysql使用的flex/yacc语法练习
  15. cisco、华为交换机常用配置对照表
  16. php无刷新分页插件,帝国cms增加Ajax加载更多功能,无刷新Ajax表分页插件使用说明_励翔科技帝国cms开发中心...
  17. 人工智能革命:人类永生还是灭亡(下)
  18. 学会如何学习 - 成为更好的终身学习者
  19. 【高等数学笔记】二元函数连续、可微、偏导数存在、偏导数连续、任意方向导数存在的关系
  20. 用于使计算机发出嘟嘟声的宏命令,2012年计算机等级考试二级Access辅导笔记:Access宏的使用...

热门文章

  1. 《指弹:Like a star》
  2. 企业代码提交和发布流程
  3. 人体动作捕捉与SMPL模型 (mocap and SMPL model)
  4. httpwatch使用_使用JavaScript的HTTPWatch自动化
  5. 一个故事轻松记忆常见252个英语字根(1~30)
  6. [从头读历史] 第248节 先天八卦和后天八卦
  7. 《Google软件测试之道》读书笔记---第一章
  8. 用python做个聊天机器人与群发助手~再也不怕没时间回女友,闺蜜被胖揍了~
  9. 使用 Notepad 或 TextEdit 来编写 HTML
  10. 使用群晖ds218play下载电驴文件