36 votes

Comment installer lxml sur OS X Leopard sans utiliser MacPorts ou Fink?

J'ai essayé cela et rencontré des problèmes plusieurs fois dans le passé. Quelqu'un at-il une recette pour installer LXML sur OS X sans MacPorts ou Fink qui fonctionne vraiment?

De préférence avec les étapes complètes 1-2-3 pour télécharger et construire chacune des dépendances.

35voto

Simon Willison Points 4091

Grâce à @jessenoller on Twitter, j'ai une réponse qui répond à mes besoins: vous pouvez compiler LXML avec des dépendances statiques, évitant ainsi de jouer avec la libxml2 fournie avec OS X. Voici ce qui a fonctionné pour moi:

 cd /tmp
wget http://lxml.de/files/lxml-2.2.2.tgz
tar -xzvf lxml-2.2.2.tgz 
cd lxml-2.2.2
python setup.py build --static-deps --libxml2-version=2.7.3  --libxslt-version=1.1.24 
sudo python setup.py install
 

33voto

Andrei Points 3689

Cela a fonctionné pour moi (10.6.8):

 sudo env ARCHFLAGS="-arch i386 -arch x86_64" easy_install lxml
 

21voto

David Eyk Points 3166

J'ai eu beaucoup de chance avec Homebrew pour installer la dépendance libxml2 :

 brew install libxml2
 

Homebrew ne semble pas avoir libxslt disponible, mais je n'ai pas encore eu besoin de XSLT. YMMV.

Une fois que vous avez la ou les dépendances, les méthodes habituelles fonctionnent parfaitement:

 pip install lxml
 

ou

 easy_install lxml
 

3voto

user785278 Points 21

Sous OS X 10.9.1, la réponse suggérée ci-dessus présente des erreurs lors de l'installation. Les modifications suivantes ont dû être apportées:

 cd /tmp  
curl -o lxml-3.3.0.tgz http://lxml.de/files/lxml-3.3.0.tgz  
tar -xzvf lxml-3.3.0.tgz  
cd lxml-3.3.0  
python setup.py build --static-deps --libxml2-version=2.8.0  --libxslt-version=1.1.24  
sudo python setup.py install  
 

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X