Pyinstaller编译出的exe文件运行后出现
ModuleNotFoundError: No module named 'pkg_resources.py2_warn'
[1688] Failed to execute script pyi_rth_pkgres编译代码中未引用pkg_resources。
网上先搜索了一番,有尝试过pip install distribute 失败。有尝试过降低pyinstaller版本,PyQt5版本,opencv版本等均失败。
重新写一个test.py如下
print('Hello Python!')结果,正常输出exe并打印出 Hello Python!似乎看到一点希望。from PyQt5 import QtCore, QtGui, QtWidgets
print('Hello Python!')正常输出exe并打印出 Hello Python!继续
import cv2print('Hello Python!')输出同上的 Failed to execute script pyi_rth_pkgres。看来有部分依赖的库会导致此问题用pyinstaller -d all test.py(debug all)模式看详细输出,还是在pkg_resources.py2_warn
之后,在有针对性的查找pkg_resources.py2_warn ,原来在setuptools里有pkg_resources模块
再降setuptools版本后,可以正常运行了。
最后,给出笔者Python配置环境的版本。供大家参考
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.6win10_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以上配置环境python包官网下载,模块均pip install自动安装依赖
精彩评论