Comment installer lxml sur Ubuntu
j'ai de la difficulté à installer lxml avec easy_install sur Ubuntu 11.
Quand je tape $ easy_install lxml
, j'obtiens:
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.
il semble que libxslt
ou libxml2
ne soit pas installé. J'ai essayé de suivre les instructions à http://www.techsww.com/tutorials/libraries/libxslt/installation/installing_libxslt_on_ubuntu_linux.php et http://www.techsww.com/tutorials/libraries/libxml/installation/installing_libxml_on_ubuntu_linux.php sans succès.
Si j'essaye wget ftp://xmlsoft.org/libxml2/libxml2-sources-2.6.27.tar.gz
je reçois
<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'.
si j'essaie l'autre d'abord, je vais arriver à ./configure --prefix=/usr/local/libxslt --with-libxml-prefix=/usr/local/libxml2
et qui échouera finalement avec:
checking for libxml libraries >= 2.6.27... configure: error: Could not find libxml2 anywhere, check ftp://xmlsoft.org/.
j'ai essayé les deux versions 2.6.27
et 2.6.29
de libxml2
sans aucune différence.
départ aucune pierre non retournée, j'ai réussi à faire sudo apt-get install libxml2-dev
, mais cela ne change rien.
9 réponses
depuis que vous êtes sur Ubuntu, ne vous embêtez pas avec ces paquets source. Il suffit d'installer ces paquets de développement en utilisant apt-get.
apt-get install libxml2-dev libxslt1-dev python-dev
si vous êtes satisfait d'une version plus ancienne de lxml, vous pouvez essayer
apt-get install python-lxml
et qu'on en finisse. :)
j'ai aussi dû installer lib32z1-dev avant que lxml ne compile (Ubuntu 13.04 x64).
sudo apt-get install lib32z1-dev
ou tous les colis requis ensemble:
sudo apt-get install libxml2-dev libxslt-dev python-dev lib32z1-dev
comme @Pepijn a commenté sur la réponse de @Druska, sur ubuntu 13.04 x64, il n'est pas nécessaire d'utiliser lib32z1-dev, zlib1g-dev suffit:
sudo apt-get install libxml2-dev libxslt-dev python-dev zlib1g-dev
j'ai installé lxml avec pip dans Vagrant, en utilisant Ubuntu 14.04 et j'ai eu le même problème. Même si toutes les exigences ont été installées, j'ai eu la même erreur encore et encore. Il s'est avéré que ma VM avait peu de mémoire par défaut. Avec 1024 Mo tout fonctionne très bien.
ajoutez ceci à votre fichier Vagrant et lxml devrait compiler / installer correctement:
config.vm.provider "virtualbox" do |vb|
vb.memory = 1024
end
merci à sixhobbit pour l'indice (voir: ne peut pas installer lxml sur Ubuntu 12.04 ).
Pour Ubuntu 14.04
sudo apt-get install python-lxml
travaillait pour moi.
après avoir installé les paquets mentionnés par AKX, j'avais toujours le même problème. Résolu avec
apt-get install python-dev
Étape 1
installe les dernières mises à jour python en utilisant cette commande.
sudo apt-get install python-dev
Étape 2
ajouter première dépendance libxml2 version 2.7.0 ou ultérieure
sudo apt-get install libxml2-dev
Étape 3
ajouter deuxième dépendance libxslt version 1.1.23 ou ultérieure
sudo apt-get install libxslt1-dev
Étape 4
installer pip outil de gestion de paquets en premier. et l'exécution de cette commande.
pip install lxml
si vous avez le moindre doute Cliquez ici
Pour Ubuntu 12.04.3 LTS (Precise Pangolin), j'ai eu à faire:
apt-get install libxml2-dev libxslt1-dev
(Notez le" 1 "dans libxslt1-dev)
puis je viens d'installer lxml avec pip/easy_install.
première installation du paquet python-lxml
D'Ubuntu et de ses dépendances:
sudo apt-get install python-lxml
puis utilisez pip
pour passer à la dernière version de lxml pour Python:
pip install lxml