我有一个Python脚本,使用cx-freeze-4.3.4.win32-py3.4
将其转换为可执行文件。我在一台安装了Python 3.4
的Windows 7 64位
机器上进行操作。
这是我的简单setup.py文件:
from cx_Freeze import setup, Executable
setup( name = "myfilename" ,
version = "0.1" ,
description = "This is my file" ,
executables = [Executable("myfilename.py")] , )
我在C:\Python34
文件夹中的命令提示符下运行了python setup.py build
,同时使用了我要转换的脚本和setup.py文件。
这将在其中创建了另一个文件夹,名为build
,其中是exe.win32-3.4
文件夹。在那个文件夹里,我找到了我的可执行文件、一堆.pyd
文件、一个单独的.dll
文件以及一个被称为库library
的压缩存档,其中包含许多.pyc
文件。
如果我从exe.win32-3.4
中运行带有库zip存档的可执行文件,则它可以正常执行。然而,如果没有.pyc文件的库存档(基本上,如果我只尝试运行.exe本身,那就是我应该能做到的),那么可执行文件将抛出此错误:
Fatal Python error: cannot get zipimpirter instance
Current thread 0x000001b48 (most recet call first):
我在网上进行了一些初步搜索,寻找解决这个问题的可能方法,但没有找到任何实质性的内容。如果有人知道如何解决这个问题,那将不胜感激。