PyInstaller 發(fā)布pyqt5 *.exe文件遇到的問題

環(huán)境說明:
系統(tǒng): windows10
工具:Pycharm2019
Python:python3.7,
Package: PyQt5(5.13.0), PyInstaller(3.5), sip(5.0.0),

問題:編輯器可以運(yùn)行,pyinstaller打包單個exe后,無法運(yùn)行。
打包方式:pyinstall -F main.py
解決過程分析:
1. 查看路徑的中文問題(此問題筆者未遇到過)
2.改用debug打包
pyinstaller -D main.py
運(yùn)行exe,直接閃退,錯誤信息無法捕捉,可以在Terminal下運(yùn)行exe,就會看到錯誤信息,嘻嘻嘻。。。
主要錯誤: ImportError: unable to find Qt5Core.dll on PATH (當(dāng)然還有其他的小問題主要是一些依賴包問題)
3.缺少包依賴,直接安裝。
4.檢查完依賴,發(fā)現(xiàn)問題依然存在,想起c/c++里面依賴指名路徑
更改編譯參數(shù):pyinstaller -p venv\Lib\site-packages -F main.py
以為到此問題解決了,然并卵。。。
5.著實想不明白,也想不通問題出在哪里,開始各大搜索引擎啊,翻墻啊,嘗試各種解決方案啊,還是依然瓜皮。

最終問題是解決了,在main.py里面加入了如下代碼:
if hasattr(sys, 'frozen'):
os.environ['PATH'] = sys._MEIPASS + ";" + os.environ['PATH']

看了一堆資料,大概意思就是說pyqt5有些版本對系統(tǒng)變量的加載存在bug,估計也只有官方才知道,加上上面那一段代碼,設(shè)置一下,重新打包,問題解決了。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容