环境
python3.7
pyinstaller3.5
pyQt5.9.2
打包
1.pyinstaller -F -w mywidget.py
打开exe弹出警告框Failed to execute script,看不到具体原因
2.用pyinstaller -F -c mywidget.py 打包
用cmd打开exe查看原因
解决方法
pyqt5库对系统变量的加载存在bug,在主程序中pyqt5库import之前就对系统变量进行手动设置,import代码如下:
import sys, os
if hasattr(sys, 'frozen'):
os.environ['PATH'] = sys._MEIPASS + ";" + os.environ['PATH']
from PyQt5.QtWidgets import QMainWindow, QTextEdit, QApplication
from PyQt5.QtCore import QTimer