首先提示No module named ‘pyqt5’
在pip安装pyqt5后
pip install PyQt5 -i https://pypi.douban.com/simple
pip install PyQt5-tools -i https://pypi.douban.com/simple
又出现如下问题,具体报错如下
qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "/home/xxx/anaconda3/envs/open3d/lib/python3.9/site-packages/cv2/qt/plugins" 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, linuxfb, minimal, minimalegl, offscreen, vnc, wayland-egl, wayland, wayland-xcomposite-egl, wayland-xcomposite-glx, webgl.
查阅别人的方法说可能是OpenCV or PyQt5版本的问题
推荐以下几个版本
pip uninstall pyqt5
pip install pyqt5==5.15.1 -i https://pypi.douban.com/simple
or
pip install pyqt5==5.10.1 -i https://pypi.douban.com/simple
但问题仍没有得到解决
仔细看报错是和xcb库可能存在一定的问题
cd 到提示路径下
cd /home/xxx/anaconda3/envs/open3d/lib/python3.9/site-packages/cv2/qt/plugins
发现还存在一个文件夹platforms,并该文件夹下有一个libqxcb.so 文件
也就是说库的路径存在问题,导致无法被找到
故需要在文件开头将该库路径进行导入
import os
envpath = '/data/xx/xx/venv/lib/python3.6/site-packages/cv2/qt/plugins/platforms'
# libqxcb.so 文件夹路径
os.environ['QT_QPA_PLATFORM_PLUGIN_PATH'] = envpath
参考链接1–opencv以及pyqt5/pyqt-tools 的安装版本问题,自行查找
参考链接2 #该方法的删除库虽然运行程序没报错,但会带来其它问题,比如当使用该库时找不到对应文件
参考链接3–最终办法