read - python etree lxml
¿Cómo instalas lxml en OS X Leopard sin usar MacPorts o Fink? (16)
Intenté esto y me encontré con problemas un montón de veces en el pasado. ¿Alguien tiene una receta para instalar lxml en OS X sin MacPorts o Fink que definitivamente funciona?
Preferiblemente con pasos completos de 1-2-3 para descargar y construir cada una de las dependencias.
¡Esto fue un gran problema para un 10.6.8 os x obsoleto, pero aquí va para cualquiera que tenga Snow Leopard!
Primero tienes que instalar una versión diferente de libxml2 de homebrew e instalar --with-python. Puede hacer esto escribiendo los siguientes comandos.
brew update
brew edit libxml2
Luego encuentra la línea que dice "--without-python" y cambia a "--with-python".
system "./configure", "--disable-dependency-tracking",
"--prefix=#{prefix}",
"--with-python"
Ahora puedes instalar libxml2.
brew install libxml2
Luego revise su nueva instalación de libxml2 en la ubicación homebrew predeterminada. Desea encontrar la configuración libxml2.
EL SUYO PUEDE SER DIFERENTE:
"/ usr / local / Cellar / libxml2 / VERSION_ / bin / xml2-config"
Ahora use el siguiente comando para instalar lxml con pip usando la nueva configuración libxml2 instalada y no la versión Mac OS X.
ARCHFLAGS="-arch i386 -arch x86_64" pip install lxml --install-option="--with-xml2-config=/usr/local/Cellar/libxml2/2.9.1/bin/xml2-config"
Funcionó para mí en mi 10.6.8 Python 2.6. Gracias.
El crédito va a esta página para mostrarme pip --install-option ...
Easy_install puede funcionar usando esto:
STATIC_DEPS = true easy_install ''lxml> = 2.2beta4''
es posible que deba ejecutar, según los permisos;
STATIC_DEPS = true sudo easy_install ''lxml> = 2.2beta4''
ver http://muffinresearch.co.uk/archives/2009/03/05/install-lxml-on-osx/
En OS X 10.9.1, la respuesta sugerida anterior arroja errores durante la instalación, se deben realizar los siguientes cambios:
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
Esto está bastante actualizado - marzo de 2009: http://lsimons.wordpress.com/2008/08/31/how-to-install-lxml-python-module-on-mac-os-105-leopard/
Esto funcionó para mí (10.6.8):
sudo env ARCHFLAGS="-arch i386 -arch x86_64" easy_install lxml
Esto funcionó para mí en 10.8.5
- Instalar Xcode desde el Mac App Store
- Xcode -> Preferencias -> Descargas -> Herramientas de línea de comandos
- Instale homebrew usando
-
ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)"
-
brew install libxml2
-
sudo easy_install lxml
Esto comprende sugerencias de:
- https://.com/a/6545556/300224
- https://.com/a/5785013/300224
- https://.com/a/9403589
Pero quería compilarlo en una respuesta en lugar de dejar comentarios en todas partes
Esto funcionó para mí en la http://muffinresearch.co.uk/archives/2009/03/05/install-lxml-on-osx/ anterior http://muffinresearch.co.uk/archives/2009/03/05/install-lxml-on-osx/
Esto funcionaba bien con Snow Lepoard pero después de actualizar a Lion tuve que enlazar gcc-4.2 a gcc. Ejecución de sudo env ARCHFLAGS = "- arch i386 -arch x86_64" easy_install lxml estaba buscando gcc-4.2 en lugar de gcc.
Estoy usando OSX 10.11 El Capitan y Homebrew. Usar pip install lxml
me daría un "error fatal: ''archivo libxml / xmlversion.h'' no encontrado" y "error con el código de error 1", bla, bla.
De acuerdo con el sitio web oficial , debería usar STATIC_DEPS=true pip install lxml
(agregue sudo antes de pip si lo necesita), y eso resolvió mi problema.
brew install libxml2
y brew install libxml2
brew install libxslt
de instalación para instalar las dependencias mientras brew install libxslt
problemas. No estoy seguro si esos dos comandos son necesarios.
Gracias a @jessenoller en Twitter, tengo una respuesta que se ajusta a mis necesidades: puedes compilar lxml con dependencias estáticas, evitando así jugar con el libxml2 que viene con OS X. Esto es lo que funcionó para mí:
cd /tmp
curl -O http://lxml.de/files/lxml-3.6.0.tgz
tar -xzvf lxml-3.6.0.tgz
cd lxml-3.6.0
python setup.py build --static-deps --libxml2-version=2.7.3 --libxslt-version=1.1.24
sudo python setup.py install
He tenido una excelente suerte con Homebrew para instalar la dependencia libxml2
:
brew install libxml2
Homebrew no parece tener disponible libxslt
, pero aún no he tenido necesidad de XSLT. YMMV.
Una vez que tenga la (s) dependencia (s), entonces los métodos habituales funcionan bien:
pip install lxml
o
easy_install lxml
Intenta instalar Cython e instalar desde la fuente, easy_install falla. Aunque todavía no lo he probado en mi mac.
En su defecto, la versión de los puertos no es tan antigua. Puede ver las dependencias, algunas de las cuales tuvieron que actualizarse para mi compilación Linux de lxml.
info py25-lxml py25-lxml @ 2.1.5 (python, desarrollador)
lxml es un enlace Pythonic para las bibliotecas libxml2 y libxslt. Es único ya que combina la velocidad y la funcionalidad de estas bibliotecas con la simplicidad de una API nativa de Python, en su mayoría compatible pero superior a la bien conocida API ElementTree. Página de inicio: http://codespeak.net/lxml/
Dependencias de biblioteca: python25, libxml2, libxslt, py25-hashlib, py25-setuptools, py25-zlib Plataformas: darwin Maintainers: [email protected] [email protected]
Lo compilo en /usr/local
sin ningún tipo de problema.
Instale Python, libxml2, libxslt y luego lxml. Es posible que también necesite instalar herramientas de configuración.
Para instalar con versiones actualizadas de libxml2 y libxslt:
ARCHFLAGS="-arch i386 -arch x86_64" STATIC_DEPS=true pip install lxml
Para instalar con versiones específicas de bibliotecas:
ARCHFLAGS="-arch i386 -arch x86_64" STATIC_DEPS=true LIBXML2_VERSION=2.7.3 LIBXSLT_VERSION=1.1.24 pip install lxml
CentOS 64 bit (un poco fuera de cuestión, pero ganado duro):
CFLAGS=-fPIC STATIC_DEPS=true pip install lxml
o
CFLAGS=-fPIC STATIC_DEPS=true LIBXML2_VERSION=2.7.3 LIBXSLT_VERSION=1.1.24 pip install lxml
usando homebrew (0.9.5) en el capitan (10.11.1) lo siguiente funcionó para mí:
brew install libxml2
LD_FLAGS=-L/usr/local/opt/libxml2/lib CPPFLAGS=-I/usr/local/opt/libxml2/include/libxml2 pip install lxml