Question

Actuellement, je suis dans mon installation PIL env virtuelle comme suit:

pip install -E . -r ./releases/%s/requirements.txt

où requirements.txt contient:

pil

Je peux télécharger des images PNG mais les images ne jpeg actuellement. De la lecture sur le web, il semble que je peux avoir besoin décodeur libjpeg? Est-ce que j'installe pil correctement? Quelle est la bonne façon d'installer PIL pour django dans un env virtuel avec libjpeg?

Était-ce utile?

La solution

Vous devez installer les bibliothèques que les autres recommandées, mais surtout, vous devriez dire PIL où les trouver. Modifier le setup.py de sorte que

    JPEG_ROOT = None 

devient

JPEG_ROOT = libinclude("/usr/lib") 

Je trouve que la meilleure façon était de télécharger la source avec pip mais pas installer:

 pip install --no-install PIL

modifier la configuration (dans le répertoire de construction de l'environnement virtuel) et l'installation

 pip install PIL

vous pouvez trouver plus d'informations dans mon un blog

Vous pouvez également essayer oreiller qui semble faire du bon travail avec peu de tracas (pip installer oreiller)

Autres conseils

Ubuntu précise, PIL ne trouve pas les fichiers de bibliothèque jpeg, même une fois qu'ils sont installés. La meilleure façon de résoudre ce problème est de faire un lien symbolique après avoir installé le package jpeg dev. Donc, il me fallait une étape supplémentaire:

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

Pour Ubuntu 11.04, ce qui a finalement fonctionné pour moi est:

pip uninstall PIL
sudo apt-get install libjpeg8-dev
pip install PIL

La Python Imaging Library (PIL de) semble vraiment pointilleux sur la version et l'emplacement des bibliothèques jpeg. Et parce que PIL est écrit en C et compilé, vous avez besoin des versions développement de la bibliothèque, en plus des versions d'exécution.

La situation est si mauvaise que la communauté PIL fourchue pour créer une version plus douce: oreiller:      http://pypi.python.org/pypi/Pillow#why-a-fork

Sur Mac OS X, j'ai utilisé le binaire suivant pour obtenir libpng et libjpeg simultanément l'ensemble du système installé:

libpng & libjpeg pour OSX

Parce que j'avais déjà PIL installé (via pip sur un virtualenv), je courais:

pip uninstall PIL
pip install PIL --upgrade

résolu l'erreur de decoder JPEG not available pour moi.

Vous devez installer les bibliothèques:

sudo aptitude install libjpeg62 libjpeg62-dev zlib1g-dev

si pip soulève une erreur, essayez     easy_install PIL

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top