Je veux installer Lxml pour pouvoir ensuite installer Scrapy.
Lorsque j'ai mis à jour mon Mac aujourd'hui, il ne me permettait pas de réinstaller lxml, j'obtiens l'erreur suivante:
In file included from src/lxml/lxml.etree.c:314:
/private/tmp/pip_build_root/lxml/src/lxml/includes/etree_defs.h:9:10: fatal error: 'libxml/xmlversion.h' file not found
#include "libxml/xmlversion.h"
^
1 error generated.
error: command 'cc' failed with exit status 1
J'ai essayé d'utiliser brew pour installer libxml2 et libxslt, tous deux installés correctement mais je ne peux toujours pas installer lxml.
La dernière fois que j'installais, j'avais besoin d'activer les outils de développement sur Xcode, mais depuis sa mise à jour vers Xcode 5, il ne me donne plus cette option.
Quelqu'un sait-il ce que je dois faire?
pip3.4 install lxml
ou lesSTATIC_DEPS=true pip3.4 install lxml
commandes si vous ciblez une installation spécifique pour Python3 (adaptez-vous à votre version, bash TAB est votre ami); afin que vous installiez pour la version spécifique de votre programme cible qui utilise cette / ces bibliothèques. Sinon, il est facile de passer 30 minutes à installer la bibliothèque pour le mauvais interprète ;-)Réponses:
Vous devez installer ou mettre à niveau l'outil de ligne de commande pour xcode. Essayez ceci dans un terminal:
la source
J'ai résolu ce problème sur Yosemite en installant et en liant
libxml2
etlibxslt
en brasse:Si vous avez résolu le problème en utilisant cette méthode mais qu'elle réapparaît plus tard, vous devrez peut-être l'exécuter avant les quatre lignes ci-dessus:
Si vous rencontrez des erreurs d'autorisation avec Homebrew, en particulier sur El Capitan, ceci est un document utile . En substance, quelle que soit la version d'OS X, essayez d'exécuter:
la source
xcode-select --install
est un peu trompeur. J'ai constaté qu'après la mise à niveau de Mavericks vers Yosemite, je devais exécuter àxcode-select --install
nouveau la mise à niveau vers les outils de ligne de commande de Yosemite. Cela résolvait (partiellement) les problèmes que je rencontrais et, en tout cas, il serait inoffensif de fonctionner de manière redondante.Vous pouvez résoudre votre problème en exécutant ceci sur la ligne de commande:
Cela m'a bien sûr aidé. Explications sur les documents
la source
J'ai essayé la plupart des solutions ci-dessus, mais aucune n'a fonctionné pour moi. J'utilise Yosemite 10.10, la seule solution qui a fonctionné pour moi a été de taper ceci dans le terminal:
EDIT: Si vous utilisez virtualenv, le sudo au début n'est pas nécessaire.
la source
virtualenv
aucun sudo n'est nécessaire.OSError: [Errno 1] Operation not permitted: '/usr/bin/build'
malgré l'exécution de la commande en tant que sudo. Des idées?Cela me dérange aussi depuis un certain temps. Je ne connais pas assez les internes sur les distutils python, etc., mais le chemin d'inclusion ici est faux. J'ai fait le hack laid suivant pour me retenir jusqu'à ce que les gens de python lxml puissent faire le correct correct.
la source
Installation globale ... OS X 10.9.2
la source
les instructions d'installation sur http://lxml.de/installation.html expliquent:
la source
Rien de ce qui précède n'a fonctionné pour moi sur 10.9.2, car la compilation se termine avec l'erreur suivante:
Qui mènent réellement à la solution la plus propre (voir plus de détails dans [1]):
ou suivant en cas d'installation mondiale
[1] erreur de clang: argument inconnu: '-mno-fused-madd' (échec d'installation du package python)
la source
/etc/sudoers
avecsudo visudo
pour préserver les variables d'environnement.la source
sudo
l'installation de pip alors que d'autres n'en avaient pas. (J'ai eu des problèmes d'autorisation lors de l'exécution directe de l'installation de pip, et j'ai dû créer sudo.) Je ne peux que supposer que j'ai installé quelque chose lié à python en tant que root dans un passé lointain, ce qui a créé certains dossiers (système) en tant que root au lieu de moi-même.sudo
Mais je n'en avais pas besoin .J'ai résolu ce problème
Yosemite
en exécutant les commandes suivantes:la source
xcode-select install
de moi. J'ai téléchargé les derniers packages libxml2 et libxlst (requis pour lxml), mais avant de les installer, j'ai pensé vérifier si Yosemite avait déjà ces fichiers quelque part. J'ai créé un env virtuel (en utilisant virtualenvwrapper), puis je l'ai faitpip install lxml
, et lxml a installé sans erreur. J'ai testé lxml en grattant la page d'accueil de Google, et cela a bien fonctionné.Avec homebrew, libxml2 est caché pour ne pas interférer avec le système libxml2, donc pip doit être un peu aidé pour le trouver.
Avec bash:
Avec du poisson:
la source
OSX 10.9.2
la source
J'ai essayé toutes les réponses sur cette page, aucune d'entre elles n'a fonctionné pour moi. J'utilise OS X version 10.9.2
Mais cela fonctionne définitivement ... comme un charme:
ARCHFLAGS = -Wno-error = argument-de-ligne-de-commande-error-hard-error-in-future pip install lxml
la source
export ARCHFLAGS="-Wno-error=unused-command-line-argument-hard-error-in-future"
ou vous pouvez ajouter des types d'architecture explicitement comme ceci:export ARCHFLAGS="-arch x86_64 -arch i386 -Wno-error=unused-command-line-argument-hard-error-in-future"
Malheureusement, cela
xcode-select --install
n'a pas fonctionné pour moi car j'avais déjà la dernière version.C'est très étrange mais j'ai résolu le problème en ouvrant XCode et en acceptant les conditions générales. La réexécution
pip install lxml
n'a renvoyé aucune erreur après.la source
Après une installation réussie à partir de pip (lxml 3.6.4), j'obtenais une erreur lors de l'importation du module lxml.etree.
Je cherchais sans cesse à l'installer comme condition requise pour scrapy, et j'ai essayé toutes les options, mais finalement cela a fonctionné pour moi (mac osx 10.11 python 2.7):
L'ancienne version de lxml semble fonctionner avec le module etree.
Pip peut souvent ignorer la version spécifiée d'un package, par exemple lorsque vous avez la version la plus récente dans le cache pip, donc le
easy_install
. L''-2.7'
option est pour la version python, omettez-la si vous installez pour python 3.x.la source
Dans mon cas, je dois arrêter Kaspersky Antivirus avant d'installer lxml en:
la source
J'utilise OSX 10.9.2 et j'obtiens la même erreur.
L'installation des outils de ligne de commande XCode n'aide pas pour cette version particulière d'OSX.
Je pense qu'une meilleure approche pour résoudre ce problème consiste à installer avec la commande suivante:
Ceci est similaire au correctif de jdkoftinoff, mais ne modifie pas votre système de manière permanente.
la source
J'ai rencontré la même question et après des jours de travail, j'ai résolu ce problème sur mon OS X 10.9.4, avec Python 3.4.1.
Voici ma solution,
Selon l' installation de lxml à partir de lxml.de,
Si vous n'avez pas MacPort, installez-le à partir de MacPort.org . C'est assez simple. Vous pouvez également avoir besoin d'un compilateur, pour installer les outils de compilation XCode, utilisez
xcode-select --install
Tout d'abord, j'ai mis à jour mon port vers la dernière version via
sudo port selfupdate
,Ensuite, je tape juste
sudo port install libxml2
et quelques minutes plus tard, vous devriez voir que libxml2 est installé avec succès. Vous devrez peut-être égalementlibxslt
installer lxml. Pour installer libxslt, utilisez:sudo port install libxslt
.Maintenant, tapez simplement
pip install lxml
, cela devrait fonctionner correctement.la source
avant de compiler, ajoutez le chemin d'accès à xmlversion.h dans votre environnement.
Mais assurez-vous que le chemin que j'ai fourni contient le fichier xmlversion.h situé à l'intérieur. Ensuite,
la source
pip
N'a pas travaillé pour moi. Je suis allé sur https://pypi.python.org/pypi/lxml/2.3 et j'ai téléchargé le fichier macosx .egg:https://pypi.python.org/packages/2.7/l/lxml/lxml-2.3-py2.7-macosx-10.6-intel.egg#md5=52322e4698d68800c6b6aedb0dbe5f34
Puis utilisé la ligne de commande
easy_install
pour installer le.egg
fichier.la source
Ce message renvoie à une solution qui a fonctionné pour moi Python3, lxml et "Symbol not found: _lzma_auto_decoder" sur Mac OS X 10.9
hth
la source
Après beaucoup de déchirure des cheveux et des grincements de dents, j'ai désinstallé xcode avec pip et j'ai couru:
easy_install lxml
Et tout allait bien.
la source
Essayer:
Ou:
Ça marche!
la source