qt.qpa.plugin: Could not load the Qt platform plugin “xcb“ in “/home/.conda/envs/py39/lib/pyth

avatar
作者
猴君
阅读量:0

qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "/home/.conda/envs/py39/lib/python3.9/site-packages/cv2/qt/plugins" even though it was found.
 

报错解释:

这个错误表明Qt应用程序试图加载名为"xcb"的平台插件时失败了。xcb是X Window系统的C语言库,它允许客户端程序通过X Window系统与X服务器通信。Qt使用这个插件来在X Window系统上绘制图形用户界面。

问题可能是因为:

  1. xcb插件不在指定的目录中。

  2. 环境变量没有正确设置,导致Qt无法找到插件。

  3. 插件可能因为缺少依赖或者是不兼容的版本而无法加载。

解决方法:

  1. 确认xcb插件是否存在于指定的目录中。如果不存在,可能需要安装或重新安装Qt。

  2. 检查环境变量,确保Qt的插件目录被包含在QT_PLUGIN_PATH环境变量中。

  3. 如果你使用的是Linux,确保安装了X Window系统的开发包,如libxcb和libx11。

  4. 如果问题仍然存在,可以尝试指定插件路径,通过在应用程序启动前设置QT_QPA_PLATFORM_PLUGIN_PATH环境变量,或者在代码中使用QCoreApplication::addLibraryPath()

  5. 确保你的Qt安装完整无损,如果有必要,重新安装Qt。

例如,在shell中临时设置QT_PLUGIN_PATH

export QT_PLUGIN_PATH=/path/to/qt/plugins

或者在代码中设置:

QCoreApplication::addLibraryPath("/path/to/qt/plugins");

确保替换/path/to/qt/plugins为你的Qt插件实际所在的目录。

==============================others====================================

qt.qpa.plugin: Could not load the Qt platform plugin “xcb“ in问题

  • 一般出现qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in问题,主要是安装pyqt5后,缺少一些链接库,通过以下方法定位到缺少哪个链接库
    • 在环境中 export QT_DEBUG_PLUGINS=1
    • 执行出现该问题到程序,便可以定位到缺失的链接库。
    • 在ubuntu系统中一般是libxcb-xinerama.so.0,通过sudo apt-get install libxcb-xinerama0
    • 在centos系统中一般是libxkbcommon-x11.so.0,通过yum -y install libxkbcommon-x11-devel
  • 提供两个通过文件名查找包名到网站

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!