python3& pyqt4& cx_freeze:没有名为' sip'

时间:2014-07-12 18:24:42

标签: python python-3.x pyqt4 cx-freeze

我刚刚学会了一些python& pyqt基础知识,今天我想将我制作的程序转换为exe。我使用python 3.4.1和PyQt4通过二进制安装程序安装(我的系统是32位Windows 7企业版,如果它有任何区别)。所以我发现Cx_Freeze应该是一个可行的工具,但是现在,我花了几个小时试图让它工作。

我从这个site安装了Cx_Freeze(在从pypi.python.org安装它并考虑到模块时出现了一些错误;这个版本应该有修补它的补丁),这是(当前版本)我的setup.py文件:

import sys
from cx_Freeze import setup, Executable

build_exe_options = {"packages": ["re", "sip"]}

setup(
    name = "Project",
    version = "1.0",
    description = "desc",
    options = {'build_exe': build_exe_options},
    executables = [Executable("project.py", base = "Win32GUI")]
    )

因此,当我在cmd(python setup.py build)中运行它时,它会创建构建文件夹和所有内容,但是当我尝试在内部运行project.exe时,我会得到error message

除此之外,我还尝试过" re"和#34; sip" in包括(而不是包)。此外,早期版本之一没有我定义的特定选项。还尝试简单地复制我可以在网上找到的其他几个安装文件,依此类推 - 但没有任何效果。

提前感谢您的任何帮助:))

1 个答案:

答案 0 :(得分:0)

重新作为答案:

这是一个将在下一版cx_Freeze中修复的错误。当它无法将代码文件解析为Python语法时,它会尝试将其视为已编译的库,但这不一定正确(例如PyQt包含Python 2和3的一些单独文件)。与此同时,最简单的解决方法是手动将修复程序应用于已安装的cx_Freeze,如this comment中所述。