enter code here
我有一个程序,它使用嵌入到 pyside (Qt4) GUI 中的 Enthought 的 Chaco 图。它也使用 numpy,但没关系。该程序直接从 Python 在多个平台上运行良好,但是当我使用 py2exe 为 win32 创建 .exe 时,运行 .exe 时出现错误:
Traceback (most recent call last):
File "awesome_program.pyw", line 19, in <module>
File "plotwidget.pyc", line 13, in <module>
File "enable\api.pyc", line 8, in <module>
File "enable\base.pyc", line 35, in <module>
File "enable\colors.pyc", line 246, in <module>
File "traitsui\qt4\color_editor.pyc", line 21, in <module>
File "traitsui\editors\__init__.pyc", line 22, in <module>
File "traitsui\editors\api.pyc", line 29, in <module>
File "traitsui\editors\list_str_editor.pyc", line 33, in <module>
File "pyface\image_resource.pyc", line 18, in <module>
File "pyface\toolkit.pyc", line 73, in <module>
File "pyface\toolkit.pyc", line 38, in _init_toolkit
File "pyface\toolkit.pyc", line 31, in import_toolkit
ImportError: No module named init
setup.py 文件是:
#! /usr/bin/env python
# setup_win32.py
# Create an .exe for win32 systems.
# Run this with:
# python setup_win32.py py2exe
import sys
from distutils.core import setup
import py2exe
# from cx_Freeze import setup, Executable
includes = []
includes.append("PySide.QtUiTools")
includes.append("PySide.QtXml")
base = None
if sys.platform == "win32":
base = "Win32GUI"
setup(options = {"py2exe": {"dll_excludes":["MSVCP90.dll"],
"includes": includes}},
name='awesomeprogram',
version='0.01',
description='A program to visualize stuff.',
author='John Doe',
author_email='dude@email.com',
console=[{"script": "awesome_program.pyw"}])
我对 Chaco 和 py2exe 还很陌生,但我觉得我的 py2exe 安装文件中需要从 Enthought 的套件中明确包含一些内容?这个事情谁有经验?