2011-12-20 21 views
5

Quiero ejecutar Python's ndimage para hacer algunos análisis de imágenes. Tengo una Mac de 64 bits con OSX Lion y Python 2.7. Cuando intenté ejecutar comandos desde los comandos ndimage, descubrí que necesito instalar PIL.Instalación de PIL en OS X Lion (novato completo)

Lo descargué y descomprimí (por ahora en la carpeta de descargas, ¿hay un mejor lugar para hacerlo?). Corro setup.py y recibe estos mensajes:

running install 
running build 
running build_py 
running build_ext 
--- using frameworks at /System/Library/Frameworks 
building '_imaging' extension 
gcc-4.2 -fno-strict-aliasing -fno-common -dynamic -isysroot /Developer/SDKs/MacOSX10.6.sdk -arch i386 -arch x86_64 -g -O2 -DNDEBUG -g -O3 -DHAVE_LIBZ -I/System/Library/Frameworks/Tcl.framework/Headers -I/System/Library/Frameworks/Tk.framework/Headers -IlibImaging -I/Library/Frameworks/Python.framework/Versions/2.7/include -I/usr/include -I/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7 -c _imaging.c -o build/temp.macosx-10.6-intel-2.7/_imaging.o 
unable to execute gcc-4.2: No such file or directory 
error: command 'gcc-4.2' failed with exit status 1 

leí Failed to build PIL on Mac OS X 10.7 Lion y se aseguró de que tengo la versión de 32/64 bits de Python 2.7 instalado (Mac OS X de 64 bits/32 bits x86-64/Instalador i386 (2.7.2) para Mac OS X 10.6 y 10.7). También tengo Xcode instalado. ¿Estoy haciendo algo estúpido aquí?

Editar 1: buscando más, he encontrado gcc-4.2 failed with exit status 1. He intentado entrar en esto cuando me sale el error:

llvm-gcc-4.2 -fno-strict-aliasing -fno-common -dynamic -isysroot /Developer/SDKs/MacOSX10.6.sdk -arch i386 -arch x86_64 -g -O2 -DNDEBUG -g -O3 -DHAVE_LIBZ -I/System/Library/Frameworks/Tcl.framework/Headers -I/System/Library/Frameworks/Tk.framework/Headers -IlibImaging -I/Library/Frameworks/Python.framework/Versions/2.7/include -I/usr/include -I/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7 -c _imaging.c -o build/temp.macosx-10.6-intel-2.7/_imaging.o 

y recibo estos mensajes:

_imaging.c:3017: warning: initialization from incompatible pointer type 
_imaging.c:3077: warning: initialization from incompatible pointer type 
_imaging.c:3017: warning: initialization from incompatible pointer type 
_imaging.c:3077: warning: initialization from incompatible pointer type 

Edición 2: No estoy seguro de si este es el camino correcto para voy, pero me encontré con un post on installing pil on OSX Leopard y, tras su consejo, se deshizo de la parte -arch i386 del comando y entró:

llvm-gcc-4.2 -fno-strict-aliasing -fno-common -dynamic -isysroot /Developer/SDKs/MacOSX10.6.sdk -arch x86_64 -g -O2 -DNDEBUG -g -O3 -DHAVE_LIBZ -I/System/Library/Frameworks/Tcl.framework/Headers -I/System/Library/Frameworks/Tk.framework/Headers -IlibImaging -I/Library/Frameworks/Python.framework/Versions/2.7/include -I/usr/include -I/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7 -c _imaging.c -o build/temp.macosx-10.6-intel-2.7/_imaging.o 

Ahora solo me dan dos errores:

_imaging.c:3017: warning: initialization from incompatible pointer type 
_imaging.c:3077: warning: initialization from incompatible pointer type 

De lo que puedo decir en este momento el programa hace caca y no acaba de compilar. ¿Alguien puede ayudarme a tomarlo desde aquí?

+0

¿Ha creado un enlace simbólico como el usuario que ha publicado sobre gcc? –

+0

gracias por la respuesta. Intenté ir a la carpeta del desarrollador e ingresar 'ln -s llvm-gcc-4.2 gcc-4.2' si eso es lo que quiere decir – user1108470

+0

use la cita para el escape (aunque no creo que le brinde nuevas líneas en comentarios). No tengo acceso a un Mac, así que solo estoy haciendo conjeturas. ¿Entonces ahora la compilación muere una vez más? –

Respuesta

0

He tenido muy buenos resultados con la Biblioteca de imágenes Python de MacPorts (PIL), Pandas, Numpy y otros paquetes de análisis numéricos en León y León de montaña.

Recientemente hubo algunas mejoras significativas con gcc para la integración con los últimos módulos numéricos de Python en MacPorts. Parecía un esfuerzo muy significativo. Recomiendo MacPorts a menos que esté decidido a hacer hash a través de una instalación nativa de PIL en Lion.

0

Tuve problemas de compilación con PIL con Mountain Lion y python 2.7. Usé Pillow en su lugar, es una horquilla PIL amigable con un soporte de plataforma más amplio.

regardins sus preguntas de configuración:

  • utilizo macports para Python 2.7 y otras cosas de código abierto en mi mac (libpng, libjpeg, etc para almohada)
  • virtualenv para la creación de un entorno pitón virtuales (Venv será incorporado en python 3.3)
  • puse código fuente bajo ~/src (en lugar de carpeta Descargas)
Cuestiones relacionadas