Sco*_*ung 3 python lxml libxml2 libxslt python-docx
我正在尝试在Enthought Canopy中运行python-docx。我在VMWare Worstation 10上运行Ubuntu 14.04。每当我尝试从lxml导入docx或导入etree时,都会收到一个似乎与libxml2库有关的错误:
ImportError: /usr/lib/x86_64-linux-gnu/libxslt.so.1: symbol xmlBufUse, version LIBXML2_2.9.0 not defined in file libxml2.so.2 with link time reference
Run Code Online (Sandbox Code Playgroud)
我四处查看,发现另一个人也遇到类似的错误,然后按照指示进行操作。仍然没有运气。然后我意识到我的计算机上有libxml2版本2.9.1。
这是否意味着我需要获取旧版本的libxml2 2.9.0,还是有其他问题?我可以使用apt-get找到2.9.1,但找不到2.9.0。在踏上这条路之前,我认为这里的某个人可能会有更好的主意。
谢谢!
小智 5
只需安装以下软件包即可。
对于Ubuntu
apt-get install libxslt-dev
Run Code Online (Sandbox Code Playgroud)
对于Centos
yum install libxslt-devel
Run Code Online (Sandbox Code Playgroud)
我对 Ubuntu 没有太多专业知识,但这个问题肯定是在 lxml 和 libxml2 和/或 libxslt 之间。运行 python-docx 时发生这种情况的唯一原因是导致 lxml 被导入。
我会尝试卸载 lxml 并重新安装。我依稀记得 lxml 与 libxml2 和 libxslt 硬链接,但那是不久前的事了。lxml 链接的版本与已安装的版本之间可能存在版本不匹配。
如果这不起作用,我会更深入地了解 libxml2 和 libxslt 安装。这里有一些流行的建议:How to install lxml on Ubuntu
python-docx 不会对是否有最新的 lxml 软件包非常挑剔,如果有一个可以通过 apt 获得的软件包,它应该可以正常工作。
| 归档时间: |
|
| 查看次数: |
3198 次 |
| 最近记录: |