py2exe在打包含matplotlib模块以及缺失libopenblas.*********.gfortran-win_amd64.dll等报错解决方法

这个文章就不啰嗦了,直接上错误及其解决方法。

一、RuntimeError: Could not find the matplotlib data files

py2exe在打包含matplotlib模块以及缺失libopenblas.*********.gfortran-win_amd64.dll等报错解决方法_第1张图片

该问题出现是因为py2exe打包过程中没有将matplotlib的部分文件打包进去,所以在打包程序中手动添加这些文件包含代码,然后重新打包,代码如下:

import distutils
import py2exe
import glob

data_files=[(r'mpl-data', glob.glob(r'你的Python路径\Lib\site-packages\matplotlib\mpl-data\*.*')),
              (r'mpl-data', [r'你的Python路径\Lib\site-packages\matplotlib\mpl-data\matplotlibrc']),
              (r'mpl-data\images', glob.glob(r'你的Python路径\Lib\site-packages\matplotlib\mpl-data\images\*.*')),
              (r'mpl-data\fonts', glob.glob(r'你的Python路径\Lib\site-packages\matplotlib\mpl-data\fonts\*.*')),
              (r'mpl-data\stylelib', glob.glob(r'你的Python路径\Lib\site-packages\matplotlib\mpl-data\stylelib\*.*'))]

distutils.core.setup(windows=['你的脚本.py'],data_files=data_files)

二、缺失“libopenblas.TXA6YQSD3GCQQC22GEQ54J2UDCXDXHWN.gfortran-win_amd64.dll”或者名称类似“libopenblas.****.gfortran-win_amd64.dll”缺失

1、方案一:首先确定安装了合适的numpy模块,在其目录下(site-packages\numpy\.libs中),会有该dll文件,复制到打包目录即可。

2、方案二:该方式是我在win7系统中发现的,其他系统可参考尝试。跟intel-numpy和mkl模块有关,尝试安装intel-numpy与mkl发现无法同时安装。偶然发现有个numpy+mkl的模块,安装后问题完美解决,附上下载地址(Python2.7 64位/32位):

链接:https://pan.baidu.com/s/13BazVKsOaonCw5qwMmai3g ,提取码:oxw4

你可能感兴趣的:(技术问题)