IT story

Mac OS X 10.9에 Lxml을 설치할 수 없습니다

hot-time 2020. 4. 13. 08:22
반응형

Mac OS X 10.9에 Lxml을 설치할 수 없습니다


Scrapy를 설치할 수 있도록 Lxml을 설치하고 싶습니다.

오늘 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로 업데이트 된 이후 더 이상 해당 옵션을 제공하지 않습니다.

누구든지 내가해야 할 일을 알고 있습니까?


xcode 용 명령 줄 도구를 설치하거나 업그레이드해야합니다. 터미널에서 이것을 시도하십시오 :

xcode-select --install

설치 및 연결 libxml2libxslt추출을 통해 Yosemite 에서이 문제를 해결했습니다 .

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

이 방법을 사용하여 문제점을 해결했지만 나중에 다시 팝업이 표시 되면 위의 4 행 전에 이를 실행해야합니다 .

brew unlink libxml2
brew unlink libxslt

Homebrew, 특히 El Capitan에서 권한 오류 가있는 경우 유용한 문서 입니다. 본질적으로 OS X 버전에 관계없이 다음을 실행하십시오.

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

명령 행에서이를 실행하여 문제점을 해결할 수 있습니다.

 STATIC_DEPS=true pip install lxml

확실히 나를 도왔다. 문서 에 대한 설명


위의 대부분의 솔루션을 시도했지만 그중 아무것도 나를 위해 일하지 않았습니다. 요세미티 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

편집 : virtualenv를 사용하는 경우 처음에는 sudo가 필요하지 않습니다.


이것은 잠시 동안 나를 귀찮게하고 있습니다. 파이썬 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에 설치 지침 :

테스트 환경, 예를 들어 지속적인 통합 서버에서 빌드 속도를 높이려면 CFLAGS 환경 변수를 설정하여 C 컴파일러 최적화를 비활성화하십시오.

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 오류 : 알 수없는 인수 : '-mno-fused-madd'(파이썬 패키지 설치 실패)


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

Yosemite다음 명령을 실행 하여이 문제를 해결했습니다 .

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

homebrew를 사용하면 libxml2가 시스템 libxml2를 방해하지 않도록 숨겨 지므로 pip를 찾으려면 약간의 도움이 필요합니다.

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

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 = 미사용 명령 줄 인수-하드-미래 오류 핍 설치 lxml


불행히도 xcode-select --install나는 이미 최신 버전을 가지고 있었기 때문에 나를 위해 작동하지 않았습니다.

매우 이상하지만 XCode를 열고 이용 약관에 동의하여 문제를 해결했습니다. 재실행 pip install lxml후 오류가 발생하지 않았습니다.


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 모듈에서 작동하는 것 같습니다.

Pip은 종종 지정된 버전의 패키지를 무시할 수 있습니다 (예 : pip 캐시에 최신 버전이있는 경우) easy_install. '-2.7'당신은 파이썬 3.x를 위해 설치하는 경우 옵션은 파이썬 버전입니다,이 생략


제 경우에는 다음을 통해 lxml을 설치하기 전에 Kaspersky Antivirus종료 해야합니다 .

pip install 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의 수정과 유사하지만 시스템을 영구적으로 변경하지는 않습니다.


나는 같은 질문을 만났고 일한 후에 파이썬 3.4.1을 사용하여 OS X 10.9.4 에서이 문제를 해결했습니다.

여기 내 해결책이 있습니다.

lxml.de에서 lxml설치 하면

lxml의 macport를 사용할 수 있습니다. 포트 설치 py25-lxml과 같은 것을 시도하십시오

당신이 MacPort이없는 경우에서 설치 MacPort.org . 아주 쉽습니다. XCode 컴파일 도구를 설치하려면 컴파일러가 필요할 수도 있습니다.xcode-select --install

먼저을 통해 포트를 최신 버전으로 업데이트했습니다 sudo port selfupdate.

그런 다음 입력 sudo port install libxml2하고 몇 분 후에 libxml2가 성공적으로 설치되었습니다. libxsltlxml을 설치 해야 할 수도 있습니다 . 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파일 을 설치 하십시오.


이 게시물 은 Mac OS X 10.9에서 Python3, lxml 및 "Symbol not found : _lzma_auto_decoder"에 맞는 솔루션으로 연결됩니다.

hth


머리카락이 많이 찢어지고 치아가 찢어지면 pip로 xcode를 제거하고 실행했습니다.

easy_install lxml

그리고 모든 것이 잘되었습니다.


시험:

% STATIC_DEPS=true pip install lxml

또는:

% STATIC_DEPS=true sudo pip install lxml

효과가있다!

참고 URL : https://stackoverflow.com/questions/19548011/cannot-install-lxml-on-mac-os-x-10-9

반응형