使用pyinstaller对python打包时使用matplotlib和Tkinter库所遇到的问题
pyinstaller的安装的简单使用就不多说了,pyinstaller-github中有详细介绍,比较简单。
主要记录在对打包时遇到的几个问题。
1. 程序中使用matplotlib,在打包完成后出现Intel MKL FATAL ERROR: Cannot load mk2_avx.dll or mk2_def.dll错误。如下所示:(PS,直接点击.exe文件可能不会出现错误信息,直接闪退,把.exe文件拖到dos窗口里运动就ok)
缺少这两个动态库,直接把这两个动态库复制到.exe的目录下就好,其中,这两个库的位置在python目录的./Scripts/目录下。
2. 使用Tkinter建立窗口,使用matplotlib绘图时出现:This probably means that Tcl wasn’t installed properly, 如下图所示:
这是由于matplotlib和Tkinter模块在引用时顺序不对,应该先定义matplotlib,然后在定义Tkinter。
如下:
#先定义matplotlib,然后在定义Tkinter 下面这种将发生错误
#import Tkinter
#import matplotlib.pyplot as plt
import matplotlib.pyplot as plt
import Tkinter