我正在尝试使用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__
对我来说并不熟悉。
感谢。
答案 0 :(得分:4)
我遇到了与cx_Freeze 5.0.0相同的问题。在将cx_freeze降级到4.3.4之后,我能够解决这个问题。其他版本也可以使用。
答案 1 :(得分:-2)
我遇到了同样的问题。为了你的目标,你可以尝试pinstaller.'hello world'准确编译。但问题仍然存在,如何克服这个错误