2012-08-05 25 views
5

Scripts por el estilo:PIL no reconoce la biblioteca jpeg en Mac OS

from PIL import Image, ImageOps 
img = Image.open('1.JPG') 
thumb = ImageOps.fit(img, (200,200) , Image.ANTIALIAS, (0.5, 0.5)) 

causa esta IOError:

Traceback (most recent call last): 
    (...) 
    File "/Library/Python/2.7/site-packages/PIL/Image.py", line 385, in _getdecoder 
    raise IOError("decoder %s not available" % decoder_name) 
IOError: decoder jpeg not available 

¿Cómo consigo el apoyo jpeg para mi PIL? Ese problema parece ser bien conocido, pero los hilos existentes no lo resuelven por mí. Yo uso de colar y pip para mis paquetes python y ya he intentado lo siguiente:

  • brew install jpeg provoca Error: jpeg-8d already installed
  • brew install libjpeg provoca Error: jpeg-8d already installed
  • sudo pip install Pillow - trabajos de instalación, pero no cambia nada

¿Cómo puedo obtener soporte jpeg para mi instalación PIL? ¿Algunas ideas?

Respuesta

8

No entiendo por qué, pero volver a instalar PIL ha solucionado el problema:

sudo pip uninstall pil 
sudo pip install pil 
+4

Bueno, parece que instalaste las bibliotecas jpeg después de instalar PIL. La biblioteca jpeg está enlazada en el momento de la compilación, es por eso que tuvo que reinstalar PIL. – n1r3

0

me encontré con un problema similar en Ubuntu 12.04 de 64 bits y lo resolvió mediante enlaces simbólicos las bibliotecas PIL buscaba en /usr/lib (donde fue realmente buscando para ellos):

# symlink image libraries so PIL can find them 
ln -s /usr/lib/x86_64-linux-gnu/libjpeg.so /usr/lib 
ln -s /usr/lib/x86_64-linux-gnu/libfreetype.so /usr/lib 
ln -s /usr/lib/x86_64-linux-gnu/libz.so /usr/lib 
# etc for any other libraries 
0

para las personas que no OSX aterrizan aquí, encontré linking a las bibliotecas de 64 bits en mi sistema Ubuntu de 64 bits para solucionar el problema de compilación.

Cuestiones relacionadas