使用PyInstaller打包py程序遇到的各种问题
关于PyInstaller的使用教程不累赘了
问题 1:
程序中使用opencv来读取图片或视频,调试时没有问题,但在打包完后执行exe文件出现读取失败但不报错的问题,即闪退、莫名其妙打不开但又不显示错误
解决:
方法一:
在环境文件夹venv中找到文件 “ Lib\site-packages\cv2\opencv_ffmpeg342_64.dll ”,复制到exe文件同一个文件夹下即可。342是opencv的版本号为 3.4.2
方法二:
在打包时加入参数 --add-data, 例:–add-data <文件路径>\ opencv_ffmpeg410_64.dll ;. (注意,结尾有个分号 和点)把那个dll文件一同打包。
问题2:关于打包后生成的文件太大的问题
原因是打包时把太多的无用库函数都打包进去了,实际上程序中根本用不到。
解决:
方法一: 创建虚拟环境来打包
网上有教程是使用命令创建的,但是有些人就是不喜欢在那个黑色的cmd窗口下敲命令,笨拙又不方便,或者对于初学者看到黑色窗口就是头疼。这里可以用pycharm(如果不用pycharm就免看了)生成虚拟环境了(venv文件夹ÿ