创建PyQt6 Python项目Executable



我使用PyQt6python 3.8中编写了一个Qt项目。当我一个一个地运行python文件时,没有问题。当我尝试将项目转换为可执行文件时,它失败了。我遇到了很多问题,我用谷歌搜索的方式解决了它们。然而,我找不到一个解决爱情失败的方法。

这个应用程序启动失败,因为没有QT平台插件可以被初始化。重新安装应用程序可能会解决此问题

我使用auto-py-to-exe通过love命令创建可执行文件

pyinstaller --noconfirm --onedir --windowed --icon "D:/WorkSpace/Projects/MouseReplayer/output/icon/icon2.ico" --name "Auto Test Repeater" --add-data "D:/WorkSpace/Projects/MouseReplayer/ScreenCopy;ScreenCopy/"
--add-data "D:/WorkSpace/Projects/MouseReplayer/ui;ui/" --paths "C:/Users/26010693/AppData/Local/Programs/Python/Python38/Lib/site-packages/PyQt6/Qt/bin"
--hidden-import "PyQt6.sip"  "D:/WorkSpace/Projects/MouseReplayer/ui_main.py"

我试图重新安装,但没有工作。实际上,这个问题在PyQt5中很常见,根据Youtube,有一个简单的解决方案来修复它(Youtube解决方案),将平台文件夹(PyQt5Qtpluginsplatforms)复制到Pyqt5-tools文件夹,全部在PythonPython38Libsite-packages中。但是site-packages中没有Pyqt6-tools文件夹,网上也没有安装指南。

我需要帮助解决它或找到另一种方式来创建可执行兼容PyQt6

PythonPython38Libsite-packagesPyQt5Qtpluginsplatforms中的dll文件复制到直接可执行的输出文件夹中解决了这个问题。我最近的pyinstaller命令:

pyinstaller --noconfirm --onedir --windowed --icon "D:/WorkSpace/Projects/MouseReplayer/output/icon2.ico" --name "Auto Test Player" --add-data "D:/WorkSpace/Projects/MouseReplayer/ScreenCopy;ScreenCopy/" --add-data "D:/WorkSpace/Projects/MouseReplayer/ui;ui/" --paths "C:/Users/26010693/AppData/Local/Programs/Python/Python38/Lib/site-packages/PyQt6/Qt/bin" --hidden-import "PyQt6.sip" --hidden-import "PyQt6.QtPrintSupport" --add-data "C:/Users/26010693/AppData/Local/Programs/Python/Python38/Lib/site-packages/PyQt6/Qt/plugins/platforms;platforms/"  "D:/WorkSpace/Projects/MouseReplayer/ui_main.py"

修复的关键行是:

--add-data "C:/Users/26010693/AppData/Local/Programs/Python/Python38/Lib/site-packages/PyQt6/Qt/plugins/platforms;platforms/" 

和下面一行是为了防止另一个问题:

--hidden-import "PyQt6.sip"

可能也很重要:

--hidden-import "PyQt6.QtPrintSupport"

相关内容

最新更新