descargar - python 3.7 1
Cómo instalar PyCairo 1.10 en Mac OSX con Python predeterminado (3)
¿Alguien ha instalado pycairo 1.10 en el mac con la nueva compilación waf? Su falla en no puede encontrar encabezados de python.
Creo que waf está seriamente roto para Mac OS X :(
Así es como funcionó para mí. Después de que python waf configure
no pudo encontrar Python.h, revisé el archivo config.log ubicado en build_directory y descubrí que la verdadera causa del fallo era la arquitectura incompatible. La secuencia de comandos waf intenta crear un archivo fuente simple con llamadas CPython utilizando la arquitectura i386. No puede hacerlo, porque mi python está construido para la arquitectura x86_64.
Supongo que podrías reconstruir python como un binario universal, no lo he intentado. Sin embargo, es posible construir pycairo utilizando la arquitectura x86_64. Así es cómo.
Mi configuración:
$ python --version
Python 2.7.2
$ type python
python is /usr/local/bin/python
$ file /usr/local/bin/python
/usr/local/bin/python: Mach-O 64-bit executable x86_64
$ brew --version
0.8
Importante: mi versión de python está diseñada para la arquitectura x86_64
. Asegúrese de que también sea el caso para usted antes de realizar los pasos descritos a continuación.
cerveza es para homebrew . Debe usarlo en lugar de fink o MacPorts para que los siguientes pasos funcionen para usted.
Ahora, para instalar cairo y pycairo hago lo siguiente:
-
brew install cairo
(versión 1.10.2 a partir de hoy) - Obtenga la fuente de pycairo para python 2.x (si obtiene una instantánea, se llama py2cairo , mientras que pycairo ahora requiere python 3.x). Usé la fuente de la rama maestra (commit f3435910d8f5365b45ebd4216f4043383c9e3e19)
Abra
wscript
en el editor de su elección, ubique la líneaenv = ctx.env
en la función deconfigure
y agregue la siguiente línea debajo de ellaenv.append_unique(''CFLAGS'', [''-arch'', ''x86_64''])
Guarda el archivo
Ejecuta estos comandos en tu terminal:
export CC=/usr/bin/gcc
export PKG_CONFIG_PATH=/usr/local/Cellar/cairo/1.10.2/lib/pkgconfig/
Importante: la última ruta solo funcionará para usted si instaló el cairo a través de homebrew
Luego ejecuta los comandos waf descritos en el archivo INSTALL del pycairo:
python waf configure
python waf build
python waf install
Esto debería hacerlo. Si no funciona para usted, creo que es mejor plantear el tema en la lista de correo de pycairo (si tiene uno).
El paso de androide casi funciona. uno necesita usar (de llimllib):
export ARCHFLAGS=''-arch x86_64''
en el paso 5, y luego la instalación de python waf install
puede tener éxito.
Para cualquiera que vuelva a esto, pude instalar py2cairo en OSX Lion con un enfoque ligeramente diferente, basado en el enlace de llimllib. Espero que esto ayude:
python waf clean
export PYTHONPATH=/Library/Frameworks/Python.framework/Versions/2.7/
export LD_LIBRARY_PATH=/Library/Frameworks/Python.framework/Versions/2.7/:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=/Library/Frameworks/Python.framework/Versions/2.7/lib:$LD_LIBRARY_PATH
export LINKFLAGS=''-search_dylibs_first -L /Library/Frameworks/Python.framework/Versions/2.7/lib/''
export ARCHFLAGS=''-arch x86_64''
export CC=/usr/bin/gcc-4.2
export PKG_CONFIG_PATH=/usr/local/Cellar/cairo/1.10.2/lib/pkgconfig/
python waf configure --prefix=$PYTHONPATH
python waf build
python waf install