我有一个使用virtualenv和python 2.7的CentOS设置。我使用:
安装了lxmlCFLAGS="$CFLAGS -fPIC -lgcrypt -ldl -lgpg-error -lrt" STATIC_DEPS=true pip2.7 install lxml
它编译和安装没有错误。
但是,导入lxml.objectify时我的应用程序会中断。进一步研究这个问题,我意识到它无法导入lxml.objectify和lxml.etree。我从客体化中得到的错误是:
>>> from lxml import objectify
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: /var/htdocs/plus.dev/env1/lib/python2.7/site-packages/lxml/objectify.so: undefined symbol: lzma_auto_decoder
来自etree:
>>> from lxml import etree
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: /var/htdocs/plus.dev/env1/lib/python2.7/site-packages/lxml/etree.so: undefined symbol: lzma_auto_decoder
我在谷歌搜索并按照某些论坛的规定卸载了xz-devel,但我仍然遇到同样的错误而且令人沮丧。
可能是什么问题?
答案 0 :(得分:0)
经过大量的搜索,我终于解决了这个问题。这个错误是由32位编译的python包和64位编译的python包冲突引起的。在https://github.com/0xdata/h2o/wiki/Installing-python-2.7-on-centos-6.3.-Follow-this-sequence-exactly-for-centos-machine-only
获取更详细的说明和解决方案