我正在尝试使用irclib库创建IRC客户端。但是,当我尝试使用cxFreeze冻结脚本时,我总是遇到这个错误:
Traceback (most recent call last):
File "C:\python27\lib\site-packages\cx_Freeze\initscripts\Console.py", line 27, in <module>
exec(code, m.__dict__)
File "client.py", line 38, in <module>
ImportError: No module named jaraco
setup.py脚本已多次修改,尝试包含文件,包等。似乎没什么用。这是当前版本的参考:
from cx_Freeze import setup, Executable
client = Executable(
script="client.py",
base="Win32GUI",
)
setup(
name = "client",
version = "0.2",
description = "client",
options = {'build_exe': {'includes': ["jaraco"], "packages": ["jaraco"]}},
executables = [client],
)
客户端的脚本可以缩短为一行:
from irc import client
这就是全部。我没有使用Jaraco,irclib(包irc)是。 Jaraco必须作为irclib的依赖项安装。
我试图找出原因可能发生的原因,但到目前为止,没有找到任何原因。
感谢您的帮助!
答案 0 :(得分:0)
好吧,经过一些挖掘,似乎在使用扭曲冻结应用程序时zope存在同样的问题。虽然我没有用jaraco测试它,但我认为这是同样的问题。我希望这个解决方案适用于遇到同样问题的用户:
这是setup.py脚本:
from cx_Freeze import setup, Executable
client = Executable(
script="client.py",
base="Win32GUI",
)
setup(
name = "client",
version = "0.2",
description = "client",
options = {'build_exe': {'packages': ["irc"]}},
executables = [client],
)
我提供这个答案,因为它与twisted和zope一起工作得很好。看到我的客户现在使用扭曲进行IRC通信,我不知道下面提供的步骤是否有效,但这是帮助我扭曲的原因。
HTH,