Python 如何在Ubuntu上安装lxml

Python 如何在Ubuntu上安装lxml,python,ubuntu,lxml,libxml2,easy-install,Python,Ubuntu,Lxml,Libxml2,Easy Install,我在Ubuntu11上用easy_安装安装lxml时遇到困难 当我键入$easy\u install lxml时,我得到: Searching for lxml Reading http://pypi.python.org/simple/lxml/ Reading http://codespeak.net/lxml Best match: lxml 2.3 Downloading http://lxml.de/files/lxml-2.3.tgz Processing lxml-2.3.tgz

我在Ubuntu11上用easy_安装安装lxml时遇到困难

当我键入
$easy\u install lxml
时,我得到:

Searching for lxml
Reading http://pypi.python.org/simple/lxml/
Reading http://codespeak.net/lxml
Best match: lxml 2.3
Downloading http://lxml.de/files/lxml-2.3.tgz
Processing lxml-2.3.tgz
Running lxml-2.3/setup.py -q bdist_egg --dist-dir /tmp/easy_install-7UdQOZ/lxml-2.3/egg-dist-tmp-GacQGy
Building lxml version 2.3.
Building without Cython.
ERROR: /bin/sh: xslt-config: not found

** make sure the development packages of libxml2 and libxslt are installed **

Using build configuration of libxslt 
In file included from src/lxml/lxml.etree.c:227:0:
src/lxml/etree_defs.h:9:31: fatal error: libxml/xmlversion.h: No such file or directory
compilation terminated.
似乎未安装
libxslt
libxml2
。我试着按照指示去做,但没有成功

如果我尝试
wgetftp://xmlsoft.org/libxml2/libxml2-sources-2.6.27.tar.gz
我明白了

<successful connection info>
==> SYST ... done.    ==> PWD ... done.
==> TYPE I ... done.  ==> CWD (1) /libxml2 ... done.
==> SIZE libxml2-sources-2.6.27.tar.gz ... done.
==> PASV ... done.    ==> RETR libxml2-sources-2.6.27.tar.gz ... 
No such file `libxml2-sources-2.6.27.tar.gz'.
我尝试了
libxml2
2.6.27
2.6.29
两个版本,没有任何区别


不遗余力,我已经成功地完成了sudo apt get install libxml2 dev,但这并没有改变任何事情。

既然您使用的是Ubuntu,就不用担心那些源代码包了。只需使用apt-get安装这些开发包

apt-get install libxml2-dev libxslt1-dev python-dev
不过,如果您对lxml的旧版本感到满意,您可以试试

apt-get install python-lxml
sudo apt install python-lxml

然后就完蛋了。:)

在lxml编译之前,我还必须安装lib32z1 dev(Ubuntu 13.04 x64)

或将所有必需的包放在一起:

sudo apt-get install libxml2-dev libxslt-dev python-dev lib32z1-dev

在安装了AKX提到的包之后,我仍然有同样的问题。解决了这个问题

apt-get install python-dev
对于Ubuntu12.04.3 LTS(精确穿山甲),我必须:

apt-get install libxml2-dev libxslt1-dev
(请注意libxslt1 dev中的“1”)


然后我用pip/easy_install安装了lxml。

正如@Pepijn对@Druska的回答所评论的那样,在ubuntu 13.04 x64上,没有必要使用lib32z1 dev,zlib1g dev就足够了:

sudo apt-get install libxml2-dev libxslt-dev python-dev zlib1g-dev

我使用Ubuntu14.04在Vagrant中安装了带有pip的lxml,并且遇到了同样的问题。即使所有的需求都安装在哪里,我还是一次又一次地遇到同样的错误。事实证明,默认情况下,我的虚拟机只有很少的内存。1024MB的内存,一切正常

将此添加到您的Vagrant文件中,lxml应正确编译/安装:

config.vm.provider "virtualbox" do |vb|
  vb.memory = 1024
end
感谢sixhobbit的提示(参见:)。

适用于Ubuntu 14.04

sudo apt get install python lxml


为我工作。

首先安装Ubuntu的
python lxml
包及其依赖项:

sudo apt-get install python-lxml
然后使用
pip
升级到最新版本的lxml for Python:

pip install lxml

步骤1

使用此命令安装最新的python更新

sudo-apt-get-install-python-dev

步骤2

添加第一个依赖项libxml22.7.0版或更高版本

sudo apt get安装libxml2 dev

步骤3

添加第二个依赖项libxslt1.1.23版或更高版本

sudo apt get安装libxslt1 dev

步骤4

首先安装pip包管理工具。并运行此命令

pip安装lxml


如果您有任何疑问

这里的许多答案都相当陈旧,
感谢@Simplans()的指针和

什么对我有效(Ubuntu仿生):

(++
sudo apt get install libxml2 dev libxslt1 dev
我之前安装过,但不确定这是否仍然是要求)

从Ubuntu18.4(仿生海狸)开始,建议使用apt而不是apt get,因为它有更好的结构形式

sudo apt install libxml2-dev libxslt1-dev python-dev
不过,如果您对较旧版本的
lxml
感到满意,您可以试试

apt-get install python-lxml
sudo apt install python-lxml


这个答案应该添加到lxml安装说明中:)谢谢+1在运行
apt get install libxml2 dev libxslt dev
之后,您可以在最新的类似ubuntu的发行版中轻松安装lxml,您必须安装libxslt1-dev而不是libxslt-devAt,至少在Ubuntu 14.04上,您还必须安装包
zlib1g-dev
。在Ubuntu 16.04上也必须安装
zlib1g-dev
。没有这个,我得到了错误
/usr/bin/ld:找不到-lz
+1。即使在安装了所有其他提到的包之后,也需要这个包。是的,我在13.04上也需要这个包。为什么它需要lib32包的头?也许zlib1g-dev也能工作?在ubuntu 13.04上需要zlib1g-dev,在14.04 64位上也需要zlib1g-dev。这是个坏消息。我已经从这个问题中获得了超过1000个代表,如果他们已经修复,它将停止获取视图。。。只有密码的答案是不受欢迎的。添加一些解释虽然这个答案可能是正确的,但请添加一些解释。传授基本逻辑比仅仅给出代码更重要,因为这有助于OP和其他读者自己解决这一问题和类似问题。否决投票是因为在一个已经有好几个答案的问题上没有添加任何新的内容。这对我很有效。谢谢它说编译失败,状态为4,以防对其他人有帮助。这个答案与OP的问题无关。是的,一个老问题的老答案。我是说,当我问的时候我正在Ubuntu 11上!是的,我怀疑你是否还能在这里问这个问题(会转移到ubuntu等),但它仍然会占用大量的网络搜索。并且怀疑是否有人还在使用Ubuntu 11:)。然后,旧的linux版本和软件包在兼容性方面,希望有一天会有所改进。这是在Ubuntu20.04上运行的唯一选项
sudo apt install python-lxml