正在获取“在库libxml2中找不到函数xmlCheckVersion。是否已安装libxml2?” 通过pip安装lxml时


102

Could not find function xmlCheckVersion in library libxml2. Is libxml2 installed?尝试通过pip安装lxml时出现错误。

  c:\users\f\appdata\local\temp\xmlXPathInitqjzysz.c(1) : fatal error C1083: Cannot open include file: 'libxml/xpath.h': No such file or directory
  *********************************************************************************
  Could not find function xmlCheckVersion in library libxml2. Is libxml2 installed?
  *********************************************************************************
  error: command 'C:\\Users\\f\\AppData\\Local\\Programs\\Common\\Microsoft\\Visual C++ for Python\\9.0\\VC\\Bin\\cl.exe' failed with exit status 2

我找不到要通过pip安装的任何libxml2 dev软件包。

在Windows 10下的virtualenv中的x86上使用Python 2.7和Python3.x。

Answers:


157

我遇到了这个问题,并意识到虽然我确实安装了libxml2,但我没有python软件包所需的必要开发库。安装它们解决了问题:

sudo apt-get install libxml2-dev libxslt1-dev
sudo pip install lxml

23
请仔细阅读操作内容。他正在Windows机器上执行此操作!
Metahuman

2
使用pip时适用于Linux的正确解决方案
Goranek '16

3
Fedora 23: dnf install libxml2-develdnf install libxslt-devel
SergO

@Metahuman我在Windows上使用Cygwin的安装程序解决了安装在同一个软件包问题10
标签

2
Centos 7sudo yum install libxml2-devel libxslt-devel(python-docx模块必需)
Marc Maxmeister

108

http://www.lfd.uci.edu/~gohlke/pythonlibs/#lxml安装适用于您的python版本的lxml 。这是带有所需模块/依赖项的预编译的WHL。

该站点列出了几个软件包,例如,在使用Win32 Python 3.9时,请使用lxml‑4.5.2‑cp39‑cp39‑win32.whl

下载文件,然后安装:

pip install C:\path\to\downloaded\file\lxml4.5.2cp39cp39win32.whl

4
@ user151496-yum install libxml2-devel libxslt-devel为我做到了。 stackoverflow.com/questions/26884514/…–
特伦特

6
到目前为止,Windows的最佳答案。
Leonel Sanches da Silva

2
您还可以使用以下更通用的命令进行安装:pip install --use-wheel --find-links = C:\ path \ to \ folder \ with \ wheel lxml
rleelr

1
该链接节省了很多时间:-)因为那里有很多轮子。
m3nda

1
很大的帮助。我需要做的另一件事:在虚拟环境中安装失败(不支持滚轮)。最终,我将其安装在常规python(c:\ program files x86 ...)上,并将python27\lib\site-packages\lxml*文件夹复制到虚拟环境中。
改革的

35

尝试使用:
easy_install lxml
这对我有效,win10,python 2.7。


5
当对lxml使用简易安装命令时,它会引发相同的错误
Piyush

1
曾经为我工作,但是现在有了新的lxml版本,它不再起作用。
SaeX

23

在Mac OS X El Capitan上,我必须运行以下两个命令来修复此错误:

xcode-select --install
pip install lxml

最终安装了lxml-3.5.0

当您运行xcode-select命令时,您可能必须签署EULA(因此,如果您是在无头计算机上进行操作的,则可以在UI中使用X-Term)。


2
是的,这在OS X El Capitan中帮了我大忙。实际上,如果您向上滚动屏幕以查看错误的根本原因,则一行显示“也许尝试:xcode-select --install”
Devy 2016年

这样就解决了,上面有一条线确实表明了这一点!
jfive,2016年

1
但是,还有其他人觉得自己曾经跑步xcode-select --install吗?第一次或第二次这样做有什么内省?需要注意的是,尽管我不必lxml全局安装即可在虚拟环境中工作,但至少可以做到这一点。
哈哈

21

如果其他人有与此相同的问题

Centos,尝试:

yum install python-lxml

的Ubuntu

sudo apt-get install -y python-lxml

为我工作。



1

我尝试安装依赖的库,但lxml没有任何效果。我看到,当构建启动的消息:“建而不用Cython”,所以安装后cython使用apt-get install cythonlxml安装。



0

对于python 32位,我遇到了相同的错误。安装64位后,此问题已解决。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.