django - library - virtualenv python windows
instalar pil en virtualenv con libjpeg (6)
Debe instalar las bibliotecas:
sudo aptitude install libjpeg62 libjpeg62-dev zlib1g-dev
Actualmente estoy instalando PIL en mi entorno virtual de la siguiente manera:
pip install -E . -r ./releases/%s/requirements.txt
donde requirements.txt contiene:
pil
Puedo subir imágenes png pero no imágenes jpeg actualmente. ¿Después de leer en la web parece que necesito el decodificador libjpeg? ¿Estoy instalando pil incorrectamente? ¿Cuál es la forma correcta de instalar pil para django en un entorno virtual con libjpeg?
Para Ubuntu 11.04, lo que finalmente funcionó para mí es:
pip uninstall PIL
sudo apt-get install libjpeg8-dev
pip install PIL
La biblioteca de imágenes de Python (PIL) parece muy exigente con la versión y la ubicación de las bibliotecas jpeg. Y como PIL está escrito en C y compilado, necesita las versiones de desarrollo de la biblioteca además de las versiones de tiempo de ejecución.
La situación es tan mala que la comunidad bifurcó a PIL para crear una versión más suave: Pillow: http://pypi.python.org/pypi/Pillow#why-a-fork
En Ubuntu preciso, PIL no encuentra los archivos de la biblioteca jpeg, ni siquiera una vez que están instalados. La forma más fácil de arreglar esto es hacer un enlace simbólico después de haber instalado el paquete jpeg dev. Entonces, necesitaba un paso adicional:
pip uninstall PIL
sudo apt-get install libjpeg8-dev
sudo ln -s /usr/lib/x86_64-linux-gnu/libjpeg.so /usr/lib
pip install PIL
Debe instalar las bibliotecas que otros recomendaron, pero lo más importante es que debe decirle a PIL dónde encontrarlas. Edite setup.py para que
JPEG_ROOT = None
se convierte
JPEG_ROOT = libinclude("/usr/lib")
Descubrí que la manera más fácil era descargar la fuente con pip pero no instalar:
pip install --no-install PIL
edite la configuración (dentro del directorio de compilación del entorno virtual) y la instalación
pip install PIL
puedes encontrar más información en mi blog
También puede probar la almohada que parece hacer un gran trabajo con poca molestia (almohada de instalación de pipa)
En OSX, utilicé el siguiente binario para obtener libpng y libjpeg instalados simultáneamente en todo el sistema:
Como ya tenía PIL instalado (a través de pip en un virtualenv), ejecuté:
pip uninstall PIL
pip install PIL --upgrade
Esto resolvió el error del decoder JPEG not available
para mí.
si pip genera un error, prueba easy_install PIL