cx_Freeze 如果涉及包,构建时会抛出错误
cx_Freeze throws an error when building if packages are involved
如果不涉及其他包,cx_Freeze 成功将 .py
文件转换为 .exe
。
但是当包含 pandas
时,安装失败并显示此消息:
File "C:\Anaconda\lib\site-packages\cx_Freeze\hooks.py", line 1324, in load_zmq
libzmq = __import__("zmq", fromlist=["libzmq"]).libzmq
AttributeError: module 'zmq' has no attribute 'libzmq'
这是setup.py
的内容:
import sys
from cx_Freeze import setup, Executable
build_exe_options = {"packages": ["pandas"]}
base = None
if sys.platform == "win32":
base = "Win32GUI"
setup( name = "test",
version = "0.1",
options = {"build_exe": build_exe_options},
executables = [Executable("test.py", base=base)])
到目前为止,我已尝试在 anaconda 中创建一个与 运行 cx_freeze 不同的环境,以查看问题是否会以这种方式自行解决。
感谢任何帮助。
我花了很长时间试图找到这个问题的答案,但幸运的是它可以找到 here。这似乎是 cx_freeze.
固有的错误
虽然提供的下载轮子的link已经失效了,但是补丁已经添加到最新的开发版本(如果我没记错的话是6.6.0)。您可以直接从 github 安装它,例如:
python -m pip install git+https://github.com/marcelotduarte/cx_Freeze.git
这样做为我修复了错误(并使我能够发现我必须处理的其他错误!)。
cx_Freeze 成功将 .py
文件转换为 .exe
。
但是当包含 pandas
时,安装失败并显示此消息:
File "C:\Anaconda\lib\site-packages\cx_Freeze\hooks.py", line 1324, in load_zmq
libzmq = __import__("zmq", fromlist=["libzmq"]).libzmq
AttributeError: module 'zmq' has no attribute 'libzmq'
这是setup.py
的内容:
import sys
from cx_Freeze import setup, Executable
build_exe_options = {"packages": ["pandas"]}
base = None
if sys.platform == "win32":
base = "Win32GUI"
setup( name = "test",
version = "0.1",
options = {"build_exe": build_exe_options},
executables = [Executable("test.py", base=base)])
到目前为止,我已尝试在 anaconda 中创建一个与 运行 cx_freeze 不同的环境,以查看问题是否会以这种方式自行解决。
感谢任何帮助。
我花了很长时间试图找到这个问题的答案,但幸运的是它可以找到 here。这似乎是 cx_freeze.
固有的错误虽然提供的下载轮子的link已经失效了,但是补丁已经添加到最新的开发版本(如果我没记错的话是6.6.0)。您可以直接从 github 安装它,例如:
python -m pip install git+https://github.com/marcelotduarte/cx_Freeze.git
这样做为我修复了错误(并使我能够发现我必须处理的其他错误!)。