如何在 Ubuntu 上安装 lxml

2025-02-28 08:23:00
admin
原创
75
摘要:问题描述:我在 Ubuntu 11 上使用 easy_install 安装 lxml 时遇到了困难。当我输入时$ easy_install lxml我得到:Searching for lxml Reading http://pypi.python.org/simple/lxml/ Reading http:/...

问题描述:

我在 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没有安装。我尝试按照http://www.techsww.com/tutorials/libraries/libxslt/installation/installing_libxslt_on_ubuntu_linux.phphttp://www.techsww.com/tutorials/libraries/libxml/installation/installing_libxml_on_ubuntu_linux.phplibxml2上的说明进行操作,但没有成功。

如果我尝试,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/.

我已尝试过两个版本2.6.27,没有任何区别2.6.29libxml2

我竭尽全力,成功做到了sudo apt-get install libxml2-dev,但这并没有改变什么。


解决方案 1:

既然你使用的是 Ubuntu,就不必费心安装那些源包。只需使用 apt-get 安装那些开发包即可。

apt-get install libxml2-dev libxslt1-dev python-dev

如果你对 lxml 的旧版本很满意,你可以尝试

apt-get install python-lxml

并完成它。:)

解决方案 2:

在 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

解决方案 3:

正如 @Pepijn 对 @Druska 的回答所评论的,在 ubuntu 13.04 x64 上,不需要使用 lib32z1-dev,zlib1g-dev 就足够了:

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

解决方案 4:

我使用 Ubuntu 14.04 在 Vagrant 中使用 pip 安装了 lxml,但遇到了同样的问题。尽管安装了所有必需的软件,但我还是一次又一次地遇到同样的错误。原来,我的虚拟机默认内存太少了。1024 MB 一切正常。

将其添加到您的 VagrantFile 并且 lxml 应该可以正确编译/安装:

config.vm.provider "virtualbox" do |vb|
  vb.memory = 1024
end

感谢 sixhobbit 的提示(参见:无法在 Ubuntu 12.04 上安装 lxml)。

解决方案 5:

步骤 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包管理工具。然后运行此命令。

pip install lxml

如果您有任何疑问请点击此处

解决方案 6:

对于 Ubuntu 14.04

sudo apt-get install python-lxml

对我有用。

解决方案 7:

安装 AKX 提到的软件包后,我仍然遇到同样的问题。使用以下方法解决了

apt-get install python-dev

解决方案 8:

对于 Ubuntu 12.04.3 LTS (Precise Pangolin),我必须执行以下操作:

apt-get install libxml2-dev libxslt1-dev

(请注意 libxslt1-dev 中的“1”)

然后我只需使用 pip/easy_install 即可安装 lxml。

解决方案 9:

从 Ubuntu 18.4(Bionic Beaver)开始,建议使用 apt 而不是 apt-get,因为它具有更好的结构形式。

sudo apt install libxml2-dev libxslt1-dev python-dev

如果你对可能较旧的版本感到满意lxml,你可以尝试

sudo apt install python-lxml

解决方案 10:

这里的许多答案都相当老了,这要感谢@Simplans( https://stackoverflow.com/a/37759871/417747

的指引和主页......

对我有用的(Ubuntu bionic):

sudo apt-get install python3-lxml  

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

解决方案 11:

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

sudo apt-get install python-lxml

然后使用pip升级到 Python 的 lxml 的最新版本:

pip install lxml

解决方案 12:

您可以按照以下步骤在 Ubuntu 上安装 lxml:

  • 在你的 Ubuntu 系统上打开终端。

  • 通过运行以下命令来更新包列表:

 sudo apt-get update
  • 通过运行以下命令安装所需的依赖项:

 sudo apt-get install libxml2-dev libxslt-dev python-dev
  • 通过运行以下命令安装 lxml:

 sudo pip install lxml
  • 如果您尚未安装 pip,可以通过运行以下命令来安装:

 sudo apt-get install python-pip
  • 通过运行以下命令验证 lxml 是否已安装:

 python -c "import lxml; print(lxml.__version__)"

这应该输出您刚刚安装的 lxml 的版本号。

就是这样!

相关推荐
  政府信创国产化的10大政策解读一、信创国产化的背景与意义信创国产化,即信息技术应用创新国产化,是当前中国信息技术领域的一个重要发展方向。其核心在于通过自主研发和创新,实现信息技术应用的自主可控,减少对外部技术的依赖,并规避潜在的技术制裁和风险。随着全球信息技术竞争的加剧,以及某些国家对中国在科技领域的打压,信创国产化显...
工程项目管理   2941  
  为什么项目管理通常仍然耗时且低效?您是否还在反复更新电子表格、淹没在便利贴中并参加每周更新会议?这确实是耗费时间和精力。借助软件工具的帮助,您可以一目了然地全面了解您的项目。如今,国内外有足够多优秀的项目管理软件可以帮助您掌控每个项目。什么是项目管理软件?项目管理软件是广泛行业用于项目规划、资源分配和调度的软件。它使项...
项目管理软件   1803  
  PLM(产品生命周期管理)系统在企业的产品研发、生产与管理过程中扮演着至关重要的角色。然而,在实际运行中,资源冲突是经常会遇到的难题。资源冲突可能导致项目进度延迟、成本增加以及产品质量下降等一系列问题,严重影响企业的效益与竞争力。因此,如何有效应对PLM系统中的资源冲突,成为众多企业关注的焦点。接下来,我们将详细探讨5...
plm项目管理系统   31  
  敏捷项目管理与产品生命周期管理(PLM)的融合,正成为企业在复杂多变的市场环境中提升研发效率、增强竞争力的关键举措。随着技术的飞速发展和市场需求的快速更迭,传统的研发流程面临着诸多挑战,而将敏捷项目管理理念融入PLM,有望在2025年实现研发流程的深度优化,为企业创造更大的价值。理解敏捷项目管理与PLM的核心概念敏捷项...
plm项目   31  
  模块化设计在现代产品开发中扮演着至关重要的角色,它能够提升产品开发效率、降低成本、增强产品的可维护性与可扩展性。而产品生命周期管理(PLM)系统作为整合产品全生命周期信息的关键平台,对模块化设计有着强大的支持能力。随着技术的不断发展,到 2025 年,PLM 系统在支持模块化设计方面将有一系列令人瞩目的技术实践。数字化...
plm软件   28  
热门文章
项目管理软件有哪些?
曾咪二维码

扫码咨询,免费领取项目管理大礼包!

云禅道AD
禅道项目管理软件

云端的项目管理软件

尊享禅道项目软件收费版功能

无需维护,随时随地协同办公

内置subversion和git源码管理

每天备份,随时转为私有部署

免费试用