【问题描述】
我写了一个程序直接运行完全正常,但是打包之后就无法运行,弹出一个框,提示failed to execute script main。然后用录屏软件录屏,逐帧查看,发现提示下面这个错误:
Traceback (most recent cal1 last):Filemain.pyline 10,in
FilePyInstaller loader pyimod03 importers.py”,line 540,in exec_moduleFileinit_py.c2line 181,in Fileline 111,cy2init.pyin bootstrapFilecv21.py”,line 109,in load first_configinit['config.py]. Check OpenCV installation.mportError: OpenCV loader: missing configuration file:7568] Failed to execute script main
ImportError: OpenCV loader: missing configuration file: [‘config.py’]. Check OpenCV installation.
找不到你的opencv配置文件
在网上找了一下大概是打包的时候没有正常打包cv2包的问题,具体原因不想深究了,这边记录一下解决方法,方便后续再遇到知道怎么解决。
【解决方法】
**第1步:**找到你的cv2包的绝对路径
可以自己去Python安装包文件夹里面去找;或者用下面的方法
import cv2
print(cv2.__file__)
运行之后打印出cv2包的路径,我的输出是:C:\Users\lakelee\AppData\Local\Programs\Python\Python39\lib\site-packages\cv2_init_.py
那么包的路径就是:C:\Users\lakelee\AppData\Local\Programs\Python\Python39\lib\site-packages\cv2
**第2步:**添加包的路径后再打包
在原来打包语言的最后,加上 --paths=“C:\Users\lakelee\AppData\Local\Programs\Python\Python39\lib\site-packages\cv2”(具体路径根据自己电脑定)
比如我之前要打包:
pyinstaller -w docx\api.py
改成下面这样再打包就能解决问题了:
pyinstaller -w docx\api.py --paths="C:\Users\lakelee\AppData\Local\Programs\Python\Python39\lib\site-packages\cv2"
– 完 –