Pyinstaller打包问题

记录我在使用pyinstall打包客户端应用的时候,遇到的一些跨平台问题。

1 Windows7 适配问题

1
LoadLibrary: PyInstaller FormatMessageW failed.

python 3.9 开始不再适配win 7,如果软件要在 win 7上运行,python环境最高是3.8

2 win7 缺失的动态运行加载库

1
无法启动此程序,因为计算机中丢失api-ms-win-core-path-l1-1-0.dll尝试重新安装该程序以解决此问题。

缺啥补啥,把DLL文件放入程序根目录文件夹,或者放到C:/windows/System32下。不过一般这个问题不会单独出现,是由于pyinstaller打包的时候,一些动态加载的库没被放进来。

3 QT动态加载的部分缺失

1
ImportError: DLL load failed while import ing QtGui:

解决方法一:把环境中Sitepackages/QtGui放到程序根文件夹 解决方法二:使用打包命令pyinstaller main.py --noconsole --hidden-import PySide6.QtXml -F -p C:\Windows\System32\downlevel -p C:\Windows\System32 通过指定hidden-import手动加载缺少的模块。

4 pyinstaller could not get source code

在报错日志里倒着找,把缺少的环境包手动复制到程序根目录,也可以hidden-import在打包时指定导入缺失的这些包。

Buy me a coffee~
Tim 支付宝支付宝
Tim 贝宝贝宝
Tim 微信微信
0%