Fork me on GitHub

Installer la PIL (Python Imaging Library) dans un virtualenv

Introduction

Chez Ionyse, nous utilisons les virtualenv pour définir comme dépendances de nos projets certaines versions des modules python.

C'est très pratique car ainsi, chaque projet à un environnement python qui lui est propre. On peut ainsi mettre à jour la version d'un module pour un projet sans toucher aux autres.

Le problème c'est que souvent lors de l'installation de la PIL, les support des JPEG, PNG et FREETYPE n'est pas pris configurer.

Installer les dépendances

Pour commencer, il faut installer les bibliothèques nécessaires à la compilation de la PIL :

sudo apt-get install libjpeg8 libjpeg8-dev
sudo apt-get install zlib1g-dev
sudo apt-get install libfreetype6 libfreetype6-dev

Et pour que la PIL de votre virtualenv trouve les bibliothèques, vous allez devoir ruser :

sudo ln -s /usr/lib/*/libjpeg.so /usr/lib
sudo ln -s /usr/lib/*/libz.so /usr/lib
sudo ln -s /usr/lib/*/libfreetype.so /usr/lib

Vérification

$ cd
$ virtualenv --no-site-packages --distribute test_pil
$ source test_pil/bin/activate
(test_pil)$ pip install PIL
...
    --------------------------------------------------------------------
    *** TKINTER support not available (Tcl/Tk 8.5 libraries needed)
    --- JPEG support available
    --- ZLIB (PNG/ZIP) support available
    --- FREETYPE2 support available
    *** LITTLECMS support not available
    --------------------------------------------------------------------
...
(test_pil)$ deactivate
$ rm -fr test_pil

Conclusion

Vous pouvez maintenant installer la PIL sans problème dans votre virtualenv.

Comments !

blogroll

social