【发布时间】:2017-04-15 16:13:13
【问题描述】:
我正在尝试使用 cx_Freeze 将 Python 中的 hello world 程序编译为 Linux 上的独立二进制文件/包。运行 cx_Freeze 时,它会在没有错误的情况下完成,但是当我尝试运行生成的可执行文件时,会出现错误:
ImportError: No module named __startup__
我的 setup.py 文件是:
from cx_Freeze import setup, Executable
# Dependencies are automatically detected, but it might need
# fine tuning.
buildOptions = dict(packages = [], excludes = [])
base = 'Console'
executables = [
Executable('test.py', base=base)
]
setup(name='test',
version = '1.0',
description = '',
options = dict(build_exe = buildOptions),
executables = executables)
它是这样运行的:
python setup.py build
我很困惑为什么会这样。如果 ImportError 是针对库的,我会理解 - 但 __startup__ 对我来说并不熟悉。
谢谢。
【问题讨论】:
-
_startup_ 是 cx_Freeze 用来启动应用程序的模块。你能提供你正在使用的 test.py 的内容吗?您可以使用 cx_Freeze 发行版中的简单示例吗?或者你在那里得到同样的错误?
-
可能与bug on
cx_freezebug tracker 相关。您是否有机会在虚拟环境中运行?
标签: python linux python-2.7 cx-freeze