由于mpl_toolkits,cx_Freeze无法冻结脚本

时间:2018-07-22 22:08:26

标签: python-2.7 matplotlib cx-freeze

我正在尝试使用以下设置脚本冻结此program

import cx_Freeze
import sys
import os

base = None

if sys.platform == 'win32':
    base = "Win32GUI"

executables = [cx_Freeze.Executable("Electric Field API.py", base=base, icon=os.getcwd()+"\\bin\\EFAPIicon.ico")]

cx_Freeze.setup(
    name = "Electric Field API",
    options = {"build_exe": {'includes': ['numpy.core._methods','numpy.lib.format','tkFileDialog','FileDialog'], 'packages': ["matplotlib",'Tkinter','FileDialog','tkFileDialog'], "include_files":[os.getcwd()+"\\bin\\EFAPIicon.ico"]}},
    version = "1.3",
    description = "Electric Field Visualization",
    executables = executables
    )

不幸的是,运行此命令时,出现以下错误:enter image description here

在setup.py文件中列出了这些导入时,我从powershell收到以下错误: enter image description here

如果有人有办法解决此问题,将不胜感激。

1 个答案:

答案 0 :(得分:0)

显然mpl_toolkits是一个名称空间包(没有' init '),因此必须区别对待。 (我在bitbucket上读到了一些有关的内容(感谢D. Reaver)

尝试在选项中将以下内容添加到您的build_exe:

'namespace_packages':['mpl_toolkits']