(已解决)报错:Could not load the Qt platform plugin “xcb“

完整报错信息

  • QObject::moveToThread: Current thread (0x6a879f0) is not the object’s thread (0x61bb590).
    Cannot move to target thread (0x6a879f0)
  • 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: xcb, eglfs, minimal, minimalegl, offscreen, vnc, webgl.

环境

  • 服务器环境为ubuntu18.04

发生原因

  • 我本人的发生原因应该是代码里涉及到的opencv库调用了qt库来进行一些图形用户界面(GUI)输出,但是服务器上的xcb依赖除了问题,导致上述报错

解决方案

  • 参考github链接
  • 方案一:设置QT_QPA_PLATFORM=offscreen环境变量(治标不治本)
    • 如果你的开发工作不需要图形用户界面(GUI)输出,或者你正在服务器环境中运行自动化测试或批处理作业,那么设置QT_QPA_PLATFORM=offscreen环境变量可能是一个更简单且有效的选择。这种方法允许你的应用程序在没有可用屏幕的环境中运行,避免了因尝试访问缺失的图形环境而导致的错误。
    • 适用场景:
      • 服务器端应用程序,不需要显示或交互的图形界面。
      • 自动化脚本和测试,这些脚本需要运行Qt应用程序但不需要GUI。
      • 开发环境受限,如无头服务器或容器环境。
    • 实现方式
      • 在终端输入export QT_QPA_PLATFORM=offscreen从而将该环境变量临时修改为offscreen,该修改在关闭当前终端后会自动生效
      • 要检查当前该环境变量的值,可以使用命令echo $QT_QPA_PLATFORM,如果这个变量没有被设置,命令不会输出任何内容。
  • 方案二:安装xcb库及相关依赖
    • 必要时可以考虑将已安装的xcb库卸载并重装
    • 所需要安装的依赖项可以见上面提到的参考链接
  • 31
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
qt.qpa.plugin: Could not load the Qt platform plugin "xcb"是一种错误消息,表示无法加载Qt平台插件"xcb"。这通常是由于缺少相关的库文件或配置问题导致的。为了解决这个问题,你可以尝试以下几种方法: 1. 确保你的系统已经安装了libSM.so.6库文件。你可以使用以下命令在Ubuntu中安装该库: ``` sudo apt-get install libsm6 ``` 2. 检查你的LD_LIBRARY_PATH环境变量是否正确设置。LD_LIBRARY_PATH指定了动态链接库(共享库)的搜索路径。你可以使用以下命令来查看当前的LD_LIBRARY_PATH设置: ``` echo $LD_LIBRARY_PATH ``` 如果LD_LIBRARY_PATH没有包含正确的路径,你可以使用export命令来设置它: ``` export LD_LIBRARY_PATH=/path/to/libraries ``` 请将"/path/to/libraries"替换为存放Qt平台插件的目录路径。 3. 如果你是在虚拟环境中使用Qt,尝试使用conda安装Qt和相应的库文件。使用conda可以更好地管理依赖关系,并确保正确的配置。 4. 另外,你还可以尝试重新安装Qt应用程序,以确保所有必需的插件都被正确初始化。 希望以上方法能够帮助你解决这个问题。如果问题仍然存在,请提供更多的详细信息,以便我们能够更好地帮助你解决问题。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [Ubuntu18.04下解决Qt出现qt.qpa.plugin:Could not load the Qt platform pluginxcb“问题](https://download.csdn.net/download/weixin_38695061/12841039)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [关于qt.qpa.plugin: Could not load the Qt platform pluginxcb“的问题](https://blog.csdn.net/Cl2212/article/details/124129813)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [解决qt.qpa.plugin: Could not load the Qt platform pluginxcb“问题](https://blog.csdn.net/threestooegs/article/details/124424434)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值