如何解决意外的 pyinstaller 异常“找不到 pyqt5_plugins 分发”?

Posted

技术标签:

【中文标题】如何解决意外的 pyinstaller 异常“找不到 pyqt5_plugins 分发”?【英文标题】:How to solve the unexpected pyinstaller exception "pyqt5_plugins distribution was not found"? 【发布时间】:2021-08-05 11:07:27 【问题描述】:

我使用 PyQt5 库编写了一个窗口应用程序。通过“pyinstaller”编译后尝试运行exe文件,出现如下错误:

我尝试重新安装 pyqt5_plugins 库,在没有“--windowed”选项的情况下编译程序,或者从“warn-main.txt”文件中删除错误,但没有任何帮助。有人遇到过这样的问题吗?

【问题讨论】:

【参考方案1】:

使用

--copy-metadata pyqt5_plugins --copy-metadata qt5_tools --copy-metadata qt5_applications --hidden-import qt5_tools --collect-submodules qt5_applications --collect-submodules pyqt5_plugins

编辑: 对我来说,我需要几个 copy-metadatacollect-submodules 才能工作。

【讨论】:

是的,这很有帮助,但现在我遇到了“ModuleNotFoundError: No module named 'PyQt5.QtDesigner'”错误和带有 collect-submodules 的 --copy-metadata 不起作用 emm...这很难。我与 rokm 进行了一次对话,他表示这些包(您正在使用的)正在“尝试或计划覆盖 Qt 库......”这与 pyinstaller 的 Qt 挂钩不能很好地协调。见github.com/pyinstaller/pyinstaller-hooks-contrib/pull/…。我很遗憾我帮不了你。

以上是关于如何解决意外的 pyinstaller 异常“找不到 pyqt5_plugins 分发”?的主要内容,如果未能解决你的问题,请参考以下文章

如何避免关键程序被意外关闭?

pyinstaller打包报错: RecursionError: maximum recursion depth exceeded,UnicodeDecodeError 解决办法

由于未捕获的异常“NSInternalInconsistencyException”而终止应用程序,原因:“意外的启动状态”

格式异常(格式异常:意外字符(在字符 1)json

休眠异常:意外令牌:HAVING

如何解决gcc编译c程序找不到头文件的问题