问题描述:pip装了一个新库以后,可视化界面打不开,原来正常运行的spyder也打不开,报错
Could not find the Qt platform plugin “xcb” in “”.
This application failed to start because no Qt platform plugin could be initialized.
检查了QT相关库,和另一个能正常打开spyder的环境对比,库的种类和版本都一致,因此问题应该出现在当前环境的QT设置上。
省流版:可以检查Anaconda3/envs/current_env/bin/qt.conf检查QT设置是否正确,正常情况下其中的路径应该都指向当前环境(current_env)下的文件夹
详细版:
- 要找QT的具体问题,在terminal运行或者在~/.bashrc最后加上
export QT_DEBUG_PLUGINS=1
-
仔细对比正常和报错情况下的debug输出,发现QFactoryLoader少了一个路径,推测是QT的插件链接的路径不对
-
通过
export QT_QPA_PLATFORM_PLUGIN_PATH = "..."
可以添加新的插件库路径
-
成功loaded,但是路径顺序和正常情况不一致,而且报错
Could not find QTWebEngineProcess -
查找发现QTWebEngineProcess是存在的,说明还是路径有问题,找到qmake可以控制QT路径
-
但是qmake -set修改结果不对
-
锁定是qt.conf的问题,修改以后,可以在当前环境下正常使用QT。