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 cv2
print('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.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
以上配置环境python包官网下载,模块均pip install自动安装依赖
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。