我正在尝试使用PyQt5从我的代码创建一个可执行文件。我正在使用Python 3.5.3 -64位,在Windows 10中开发,使用pip来安装pyinstaller 3.2.1,并安装了pywin32。 Pyinstaller会运行但会输出未找到库的警告。
我正在使用以下内容创建我的应用程序:
pyinstaller Start_UI.py
哪个输出these warnings。
pyinstaller Start_UI.spec
哪个输出these warnings
当我打开pyinstaller创建的可执行文件时,应用程序立即关闭。由于警告,我怀疑应用程序失败了。如何解决警告,以便可执行文件有效?
感谢您的回复。
修改 我在我的计算机上搜索了DLL文件并将它们复制到dist文件夹中,该文件夹解决了以下输出的警告:
pyinstaller Start_UI.py
至于:
pyinstaller Start_UI.spec
我在我的Windows SDK安装中找到了api-mis-win-crt- * dll文件,并将它们复制到dist中。这次,警告没有解决,因为pyinstaller找不到dll文件。我在哪里需要为pyinstaller安装api dll文件来定位它们?
答案 0 :(得分:0)
看起来错误是由于 vcruntime140.dll 未包含在dist文件夹中。手动将其复制到dist
文件夹
答案 1 :(得分:0)
经过大量研究后,问题是因为Windows 10.虽然我没有找到Windows 10解决方案,但我确实在Windows 7中解决了我的问题。
我在Windows 7上测试了pyinstaller并且仍然收到警告,但没有收到api-ms-win-crt - * .dll警告。
我将Python35目录中的所有dll文件复制到pyinstaller生成的dist文件夹中。此时,pyinstaller可以将Hello World程序转换为可执行文件而不会出现错误:
pyinstaller --onefile Hello_World.py
但是,将PyQt5程序转换为可执行文件会产生错误,因为pyinstaller无法找到Qt5 * .dll文件。要修复此副本PyQt5,Qt5 * .dll文件,在Lib / site-packages / PyQt5 / Qt / bin下并进入dist。然后告诉pyinstaller dll文件使用的位置--path:
pyinstaller --onefile --path dist Start_UI.py
这将在dist。
中创建一个可运行的可执行文件Start_UI.exe