Pyinstaller編譯出的exe文件運行后出現(xiàn)
ModuleNotFoundError: No module named 'pkg_resources.py2_warn'
[1688] Failed to execute script pyi_rth_pkgres
編譯代碼中未引用pkg_resources。
網(wǎng)上先搜索了一番,有嘗試過pip install distribute 失敗。有嘗試過降低pyinstaller版本,PyQt5版本,opencv版本等均失敗。
重新寫一個test.py如下
print('Hello Python!')
結(jié)果,正常輸出exe并打印出 Hello Python!似乎看到一點希望。
from PyQt5 import QtCore, QtGui, QtWidgets
print('Hello Python!')
正常輸出exe并打印出 Hello Python!
繼續(xù)
import cv2
print('Hello Python!')
輸出同上的 Failed to execute script pyi_rth_pkgres??磥碛胁糠忠蕾嚨膸鞎?dǎo)致此問題
用pyinstaller -d all test.py(debug all)模式看詳細輸出,還是在pkg_resources.py2_warn
之后,在有針對性的查找pkg_resources.py2_warn ,原來在setuptools里有pkg_resources模塊
再降setuptools版本后,可以正常運行了。
最后,給出筆者Python配置環(huán)境的版本。供大家參考
win10_64位 + python 3.6.8_64位 + Pywin32 227 + PyQt5 5.14.1 + opencv-python 3.4.5.20 + setuptools 44.0.0 + PyInstaller 3.6
win10_32位 + python 3.5.4_32位 + Pywin32 227 + PyQt5 5.14.1 + opencv-python 3.4.5.20 + setuptools 44.0.0 + PyInstaller 3.6
以上配置環(huán)境python包官網(wǎng)下載,模塊均pip install自動安裝依賴
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。