[英]How to install lxml on Ubuntu
我在 Ubuntu 11 上使用 easy_install 安装 lxml 时遇到困难。
当我输入$ easy_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
。 I've tried following the instructions at http://www.techsww.com/tutorials/libraries/libxslt/installation/installing_libxslt_on_ubuntu_linux.php and http://www.techsww.com/tutorials/libraries/libxml/installation/installing_libxml_on_ubuntu_linux. php没有成功。
如果我尝试wget ftp://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'.
如果我先尝试另一个,我将进入./configure --prefix=/usr/local/libxslt --with-libxml-prefix=/usr/local/libxml2
最终会失败:
checking for libxml libraries >= 2.6.27... configure: error: Could not find libxml2 anywhere, check ftp://xmlsoft.org/.
我已经尝试了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
并完成它。 :)
我还必须在编译 lxml 之前安装 lib32z1-dev(Ubuntu 13.04 x64)。
sudo apt-get install lib32z1-dev
或所有必需的软件包一起:
sudo apt-get install libxml2-dev libxslt-dev python-dev lib32z1-dev
正如@Pepijn 对@Druska 的回答所评论的那样,在 ubuntu 13.04 x64 上,不需要使用 lib32z1-dev,zlib1g-dev 就足够了:
sudo apt-get install libxml2-dev libxslt-dev python-dev zlib1g-dev
我使用 Ubuntu 14.04 在 Vagrant 中安装了带有 pip 的 lxml 并遇到了同样的问题。 即使安装了所有要求,我还是一次又一次地遇到相同的错误。 事实证明,我的虚拟机默认只有很少的 memory 。 1024 MB 一切正常。
将此添加到您的 VagrantFile 和 lxml 应该正确编译/安装:
config.vm.provider "virtualbox" do |vb|
vb.memory = 1024
end
感谢 Sixhobbit 的提示(请参阅: 无法在 Ubuntu 12.04 上安装 lxml )。
对于 Ubuntu 14.04
sudo apt-get install python-lxml
为我工作。
步骤1
使用此命令安装最新的 python 更新。
sudo apt-get install python-dev
第2步
添加第一个依赖libxml2版本 2.7.0 或更高版本
sudo apt-get install libxml2-dev
第 3 步
添加第二个依赖libxslt版本 1.1.23 或更高版本
sudo apt-get install libxslt1-dev
第4步
先安装pip package管理工具。 并运行此命令。
pip install lxml
如果您有任何疑问请点击这里
安装 AKX 提到的软件包后,我仍然遇到同样的问题。 解决了
apt-get install python-dev
对于 Ubuntu 12.04.3 LTS(精确穿山甲),我必须这样做:
apt-get install libxml2-dev libxslt1-dev
(注意 libxslt1-dev 中的“1”)
然后我用 pip/easy_install 安装了 lxml。
从 Ubuntu 18.4 (Bionic Beaver) 开始,建议使用 apt 而不是 apt-get,因为它具有更好的结构形式。
sudo apt install libxml2-dev libxslt1-dev python-dev
如果您对可能较旧版本的lxml
完全满意,您可以尝试
sudo apt install python-lxml
这里的许多答案都相当古老,
感谢来自@Simplans( https://stackoverflow.com/a/37759871/417747 )的指针和主页......
什么对我有用(Ubuntu 仿生):
sudo apt-get install python3-lxml
(+ sudo apt-get install libxml2-dev libxslt1-dev
我之前安装过,但不确定这是否仍然是要求)
首先安装 Ubuntu 的python-lxml
package 及其依赖:
sudo apt-get install python-lxml
然后使用pip
升级到最新版的lxml for Python:
pip install lxml
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.