前言
最近的Qt项目,打算使用PyQt5进行开发,在各种balabala的终于幸苦的完成后,当然接下来是进行打包了,使用 pyinstaller 进行打包,结果打包完成后运行 failed to execute script,揪心!!!
解决办法
网上百度说,要重新用安装包安装pyinstaller,于是我复制了一段代码
pip install https://github.com/pyinstaller/pyinstaller/archive/develop.tar.gz
然后,由于工程里有一些资源文件,pyinstaller 打包并不能将外部资源文件打包,所以要加一个额外选项 --hidden-import=pkg_resources
pyinstaller -F -w -i logo.ico main.py --hidden-import=pkg_resources
1、 -F 保证只生成一个 exe可执行文件;
2、 -w 屏蔽应用程序控制窗口
3、 -o 后面加一个 .ico的图标文件,为打包后的应用程序添加图标
4、 main.py 是需要打包的目标py程序
打包结果如下:
打包好的qt程序也可以正常运行了
当然每个人的实际情况不一样,这里只做参考,也有可能是pyqt5版本问题。