Я хочу установить Lxml, чтобы потом установить Scrapy.
Когда я обновил свой Mac сегодня, он не позволил мне переустановить lxml, я получил следующую ошибку:
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
Я пытался использовать brew для установки libxml2 и libxslt, оба установились нормально, но я все еще не могу установить lxml.
В прошлый раз, когда я устанавливал, мне нужно было включить инструменты разработчика на XCode, но, поскольку он обновлен до XCode 5, он больше не дает мне такой возможности.
Кто-нибудь знает, что мне нужно делать?
pip3.4 install lxml
илиSTATIC_DEPS=true pip3.4 install lxml
команды, если вы нацелены на конкретную установку для Python3 (адаптируйтесь к вашей версии, завершение bash TAB - ваш друг); так что вы устанавливаете для конкретной версии вашей целевой программы, которая использует эту / эти библиотеки. В противном случае легко потратить 30 минут на установку библиотеки для неправильного интерпретатора ;-)Ответы:
Вы должны установить или обновить инструмент командной строки для xcode. Попробуйте это в терминале:
источник
Я решил эту проблему на Yosemite, установив и установив ссылки
libxml2
иlibxslt
выполнив brew:Если вы решили проблему с помощью этого метода, но позже он снова появляется, вам может потребоваться выполнить это до четырех строк выше:
Если у вас есть ошибки разрешения с Homebrew, особенно на El Capitan, это полезный документ . По сути, независимо от версии OS X, попробуйте запустить:
источник
xcode-select --install
немного вводит в заблуждение. Я обнаружил, что после обновления с Mavericks до Yosemite мне нужно было запуститьxcode-select --install
снова, чтобы перейти на инструменты командной строки Yosemite. Это (частично) решило проблемы, с которыми я сталкивался, и в любом случае было бы безопасно работать излишне.Вы можете решить свою проблему, запустив это в командной строке:
Это точно помогло мне. Пояснения к документам
источник
Я перепробовал большинство из приведенных выше решений, но ни одно из них не помогло мне. Я использую Yosemite 10.10, единственное решение, которое мне помогло, это набрать это в терминале:
РЕДАКТИРОВАТЬ: Если вы используете virtualenv, sudo в начале не требуется.
источник
virtualenv
sudo не требуется.OSError: [Errno 1] Operation not permitted: '/usr/bin/build'
выводит, несмотря на выполнение команды как sudo. Любые идеи?Это также беспокоило меня некоторое время. Я недостаточно знаю внутреннюю информацию о python distutils и т. Д., Но путь включения здесь неверен. Я сделал следующий уродливый взлом, чтобы удержать меня, пока люди из Python lxml не смогут сделать правильное исправление.
источник
Установка глобально ... OS X 10.9.2
источник
Инструкции по установке на http://lxml.de/installation.html объясняют:
источник
Ничто из вышеперечисленного не работает для меня на 10.9.2, так как компиляция выдает следующую ошибку:
Что на самом деле приводит к чистому решению (см. Более подробную информацию в [1]):
или следующий, если установка глобально
[1] ошибка лягушки: неизвестный аргумент: '-mno-fused-madd' (ошибка установки пакета python)
источник
/etc/sudoers
с ,sudo visudo
чтобы сохранить переменные окружения.источник
sudo
установке pip, а другие нет. (У меня были проблемы с правами доступа при непосредственном запуске pip, и мне пришлось иметь дело с sudo.) Я могу только предположить, что в далеком прошлом я установил что-то, связанное с python, как root, что создавало определенные (системные) папки как root, а не как я.sudo
хотя.Я решил эту проблему
Yosemite
, выполнив следующие команды:источник
xcode-select install
для меня. Я скачал последние пакеты libxml2 и libxlst (необходимые для lxml), но перед их установкой я подумал, что проверю, есть ли у Yosemite эти файлы где-нибудь. Я создал виртуальный env (используя virtualenvwrapper), а затем сделалpip install lxml
, и lxml установил без ошибок. Я протестировал lxml, почистив главную страницу Google, и это сработало нормально.В homebrew libxml2 скрыт, чтобы не мешать системе libxml2, поэтому pip нужно немного помочь, чтобы найти его.
С баш:
С рыбой:
источник
OSX 10.9.2
источник
Я перепробовал все ответы на этой странице, ни один из них не помог мне. Я использую OS X версии 10.9.2
Но это определенно работает .... как шарм
ARCHFLAGS = -Wno-error = неиспользованный-аргумент командной строки-hard-error-in-future pip install lxml
источник
export ARCHFLAGS="-Wno-error=unused-command-line-argument-hard-error-in-future"
или вы можете явно добавить типы архитектуры, например так:export ARCHFLAGS="-arch x86_64 -arch i386 -Wno-error=unused-command-line-argument-hard-error-in-future"
К сожалению
xcode-select --install
, у меня не получилось, так как у меня уже была последняя версия.Это очень странно, но я решил проблему, открыв XCode и приняв Условия. Повторный запуск не
pip install lxml
вернул никаких ошибок после.источник
После успешной установки из pip (lxml 3.6.4) я получал сообщение об ошибке при импорте модуля lxml.etree.
Я без конца искал, чтобы установить это как обязательное условие для scrapy, и перепробовал все варианты, но в конце концов это сработало для меня (mac osx 10.11 python 2.7):
Старая версия lxml, похоже, работает с модулем etree.
Пип часто может игнорировать указанную версию пакета, например , когда у вас есть новая версия в кэше пипсов, таким образом
easy_install
.'-2.7'
Вариант для питона версии, опустим это , если вы устанавливаете для питона 3.x.источник
В моем случае я должен выключить Антивирус Касперского перед установкой lxml:
источник
Я использую OSX 10.9.2 и получаю ту же ошибку.
Установка инструментов командной строки XCode не помогает для этой конкретной версии OSX.
Я думаю, что лучший способ исправить это - установить с помощью следующей команды:
Это похоже на исправление jdkoftinoff, но не меняет вашу систему постоянно.
источник
Я встретил тот же вопрос и после нескольких дней работы решил эту проблему на своей OS X 10.9.4 с Python 3.4.1.
Вот мое решение,
В соответствии с установкой lxml от lxml.de,
Если у вас нет MacPort, установите его с MacPort.org . Это довольно просто. Вам также может понадобиться компилятор, чтобы установить инструменты компиляции XCode, используйте
xcode-select --install
Во - первых , я обновил свой порт до последней версии через
sudo port selfupdate
,Затем я просто печатаю,
sudo port install libxml2
и через несколько минут вы увидите, что libxml2 успешно установлен. Возможно, вам также может понадобитьсяlibxslt
установить lxml. Для установки LibXSLT используйте:sudo port install libxslt
.Теперь просто введите
pip install lxml
, он должен работать нормально.источник
перед компиляцией добавьте путь к xmlversion.h в вашу среду.
Но убедитесь, что указанный мной путь содержит файл xmlversion.h, расположенный внутри. Затем,
источник
pip
не работал для меня. Я зашел на https://pypi.python.org/pypi/lxml/2.3 и загрузил файл macosx .egg:https://pypi.python.org/packages/2.7/l/lxml/lxml-2.3-py2.7-macosx-10.6-intel.egg#md5=52322e4698d68800c6b6aedb0dbe5f34
Затем использовали командную строку
easy_install
для установки.egg
файла.источник
Этот пост ссылается на решение, которое работало для меня Python3, lxml и «Symbol not found: _lzma_auto_decoder» в Mac OS X 10.9
НТН
источник
После долгих разрывов волос и скрежета зубов я удалил xcode с pip и запустил:
easy_install lxml
И все было хорошо.
источник
Пытаться:
Или:
Оно работает!
источник