在制作exe程序时,使用pyinstaller打包经常出现各种错误例如1、pyinstaller安装有问题;2、显示pyqt5与pyside6冲突;3、打包成功后打不开exe,exe闪退等。下面记录一下自己的解决方法,供参考。
1.1 安装pyinstaller
首先需要使用pip install pyinstaller对pyinstaller进行安装,最开始我以为我安装成功了因为结果显示
Requirement already satisfied: pyinstaller in…
1.2 采用anconda的环境启动
问了下gpt是因为太多的环境都有,系统不知道用哪个
于是我在anconda的环境中安装了pyinstaller,并在对应prompt中打开cmd界面
看了一下pyinstaller成功装上了,路径必须要有pyinstaller.exe程序。
在对应的环境启动prompt进行打包。
2.1 打包生成.spec文件
我先打包运行 pyinstaller --onefile --windowed --icon=app1_image1.ico app2.py
但是报错 attempting to run hook for ‘PySide6’…这个应该是PySide6与pyqt5冲突导致的
之后我把PySide6删了但是报错,没办法网上找了下资料,最后通过编辑spec文件解决
2.2 编辑spec文件
我是先把之前build和dist文件夹都先删除了,只剩下spec文件然后打开编辑。
找到excludes=[],修改为*excludes=[‘PySide6’],
重新打包解决pyqt5与pyside6冲突问题了
生成完后exe闪退,我这里的原因是使用了pyqt5的这些包,供参考
使用 PyQt5 库时,通过 PyInstaller 打包可能会遇到一些特定的问题,例如需要手动指定一些隐藏的导入。下面是详细的步骤
3.1 spec文件添加对应库
找到hiddenimports并添加对应的库
3.2 spec文件添加对应图片
我的exe中还有图片,所以也要添加进spec文件找到datas并添加,参考如下格式
3.3 重新打包
显示成功
找到dist文件夹,exe文件成功生成,并且可以正确运行。
版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/hd-yjs/54527.html