【发布时间】:2014-06-23 12:34:49
【问题描述】:
使用 CX_Freeze 构建可执行文件并尝试运行 .exe 后,我收到此错误。我理解这意味着 CxFreeze 无法识别 lxml。但是我试图将它包含在我的 setup.py 中
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 "mainFile.py", line 2, in <module>
File "C:\Users\user\TestFile\testPyQt.py",line 11, in
<module>
import myFile
File "C:\Users\user\TestFile\myFile.py", line 4, in
<module>
from lxml import etree
File "ExtensionLoader_lxml_etree.py", line 22, in <module>
File "ExtensionLoader_lxml_etree.py", line 14, in _bootstrap_
file "lxml.etree.pyx", line 84, in init lxml.etree
(src\lxml\lxml.etree.c:191837)
ImportError:cannot import name_elementpath
我的 setup.py 有这个:
INCLUDE_MODULES = [
'lxml',
'xml.etree.ElementTree',
'xml.etree.ElementPath',
'libxml2'
]
【问题讨论】:
-
如果你从 library.zip 中删除 lxml,并将整个 lxml 包复制到你的 exe 所在的构建目录中,它可以工作吗?
-
在哪里可以找到 libary.zip?
-
它也将在 cx_Freeze 制作你的 exe 的构建目录中。
标签: pyqt lxml libxml2 cx-freeze