Не удается установить Lxml на Mac os x 10.9

Я хочу установить 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 

Я попытался использовать варево для установки libxml2 и libxslt, оба установлены отлично, но я все еще не могу установить lxml.

В прошлый раз, когда я устанавливал, мне нужно было включить инструменты разработчика на Xcode, но с момента его обновления до Xcode 5 он больше не дает мне эту возможность.

Кто-нибудь знает, что мне нужно делать?

  • Сценарии LLDB Python в Xcode
  • ImportError: нет модуля с именем Foundation
  • Установка PIL на OS X Snow Leopard с Xcode4 (без поддержки PPC)
  • Как встраивать python в приложение Objective-C OS X для плагинов?
  • Учебное пособие или руководство по созданию сценариев создания XCode
  • python easy_install терпит неудачу с «ассемблером для архитектуры ppc не установлен» в Mac OS X
  • xcrun / lipo зависает с OS X Mavericks и XCode 4.x
  • Python в Xcode 4+?
  • 22 Solutions collect form web for “Не удается установить Lxml на Mac os x 10.9”

    Вы должны установить или обновить инструмент командной строки для xcode. Попробуйте это в терминале:

     xcode-select --install 

    Я решил эту проблему на Yosemite, установив и связав libxml2 и libxslt помощью варева:

     brew install libxml2 brew install libxslt brew link libxml2 --force brew link libxslt --force 

    Если вы решили проблему с помощью этого метода, но он появится снова в более позднее время, вам может потребоваться запустить это до четырех строк выше:

     brew unlink libxml2 brew unlink libxslt 

    Если у вас есть ошибки разрешения с Homebrew, особенно на El Capitan, это полезный документ . В сущности, независимо от версии OS X, попробуйте запустить:

     sudo chown -R $(whoami):admin /usr/local 

    Вы можете решить свою проблему, выполнив это на командной строке:

      STATIC_DEPS=true pip install lxml 

    Это помогло мне. Пояснения к документам

    Я пробовал большинство решений выше, но никто из них не работал для меня. Я запускаю Yosemite 10.10, единственным решением, которое сработало для меня, было набрать это в терминале:

     sudo CPATH=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/libxml2 CFLAGS=-Qunused-arguments CPPFLAGS=-Qunused-arguments pip install lxml 

    EDIT: Если вы используете virtualenv, sudo в начале не требуется.

    Это немного беспокоило меня. Я не знаю внутренности достаточно о python distutils и т. Д., Но путь включения здесь неверен. Я сделал следующий уродливый хак, чтобы удержать меня, пока люди python lxml не смогут сделать правильное исправление.

     sudo ln -s /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/libxml2/libxml/ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/libxml 

    Установка по всему миру … OS X 10.9.2

     xcode-select --install sudo easy_install pip sudo CPATH=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/libxml2 CFLAGS=-Qunused-arguments CPPFLAGS=-Qunused-arguments pip install lxml 

    инструкции по установке на http://lxml.de/installation.html объясните:

    Чтобы ускорить сборку тестовых сред, например, на сервере непрерывной интеграции, отключите оптимизацию компилятора C, установив переменную среды CFLAGS:

     CFLAGS="-O0" pip install lxml 

    Ни одно из вышеперечисленных не работало для меня в 10.9.2, поскольку компиляция устраняет следующую ошибку:

     clang: error: unknown argument: '-mno-fused-madd' 

    Что на самом деле приводит к чистому решению (подробнее см. В [1]):

     export CFLAGS=-Qunused-arguments export CPPFLAGS=-Qunused-arguments pip install lxml 

    или после установки в глобальном масштабе

     sudo pip install lxml 

    [1] clang error: неизвестный аргумент: '-mno-fused-madd' (ошибка установки пакета python)

     xcode-select --install sudo easy_install pip sudo pip install lxml 

    Я решил эту проблему на Yosemite , выполнив следующие команды:

     xcode-select install #this may take several minutes. pip install lxml 

    OSX 10.9.2

     sudo env ARCHFLAGS=-Wno-error=unused-command-line-argument-hard-error-in-future STATIC_DEPS=true pip install lxml 

    Я попробовал все ответы на этой странице, никто из них не работал для меня. Я запускаю OS X версии 10.9.2

    Но это определенно работает … как шарм:

    ARCHFLAGS = -Wno-error = unused-command-line-argument-hard-error-in-future pip install lxml

    К сожалению, xcode-select --install не работал для меня, поскольку у меня была последняя версия.

    Это очень странно, но я решил проблему, открыв XCode и приняв Условия и положения. Повторный запуск pip install lxml возвратил никаких ошибок после.

    С homebrew libxml2 скрыт, чтобы не мешать системе libxml2, поэтому нужно немного помочь, чтобы найти его.

    С bash:

     LDFLAGS=-L`brew --prefix libxml2`/lib CPPFLAGS=-I`brew --prefix libxml2`/include/libxml2 pip install --user lxml 

    С рыбой:

     env LDFLAGS=-L(brew --prefix libxml2)/lib CPPFLAGS=-I(brew --prefix libxml2)/include/libxml2 pip install --user lxml 

    Я использую OSX 10.9.2, и я получаю ту же ошибку.

    Установка инструментов командной строки XCode не помогает для этой конкретной версии OSX.

    Я думаю, что лучший способ исправить это – установить с помощью следующей команды:

     $ CPATH=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/libxml2 pip install lxml 

    Это похоже на исправление jdkoftinoff, но не постоянно изменяет вашу систему.

    Я встретил тот же вопрос, и после нескольких дней работы я решил эту проблему на своей OS X 10.9.4, с Python 3.4.1.

    Вот мое решение,

    Согласно установке lxml из lxml.de,

    Доступен макрос lxml. Попробуйте что-то вроде установки порта py25-lxml

    Если у вас нет 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 в вашу среду.

     $ set INCLUDE=$INCLUDE:/private/tmp/pip_build_root/lxml/src/lxml/ 

    Но убедитесь, что путь, который я предоставил, содержит файл xmlversion.h, расположенный внутри. Затем,

     $ python setup.py install 

    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

    НТН

    После успешной установки из pip (lxml 3.6.4) я получал ошибку при импорте модуля lxml.etree.

    Я искал бесконечно, чтобы установить это как необходимое для scrapy, и попробовал все варианты, но, наконец, это сработало для меня (mac osx 10.11 python 2.7):

     $ STATIC_DEPS=true sudo easy_install-2.7 "lxml==2.3.5" 

    Более старая версия lxml, похоже, работает с модулем etree.

    Пип может часто игнорировать указанную версию пакета, например, когда у вас есть более новая версия в кэше пиков, и, таким образом, easy_install . Параметр '-2.7' предназначен для версии python, опустите это, если вы устанавливаете для python 3.x.

    В моем случае я должен закрыть Kaspersky Antivirus перед установкой lxml:

     pip install lxml 

    Пытаться:

     % STATIC_DEPS=true pip install lxml 

    Или:

     % STATIC_DEPS=true sudo pip install lxml 

    Оно работает!

    Python - лучший язык программирования в мире.