Когда разработчики требуют множество python и django различных версий на одном хосте на помощь приходит
virtualenv…
Но после этого доустанавливать дополнительные модули для каждого python приходиться руками через pip
И тут возникают нюансы. Например с библиотекой PIL
Она прекрасно устанавливается, но при попытке работы с ней выдает вот такие великолепные сообщения об ошибках
decoder jpeg not available
Проблема в том, что при сборке PIL не может библиотеки для работы с jpeg, zlib, tiff, freetype, потому что в нашем случае они лежат в /usr/lib64, а в PIL написано искать только в /usr/local/lib
Вот diff, который решает данную проблему:
*** setup.py.orig 2012-12-01 16:11:49.000000000 +0400
--- setup.py 2012-12-01 16:12:15.000000000 +0400
***************
*** 147,152 ****
--- 147,154 ----
add_directory(library_dirs, "/opt/local/lib")
add_directory(include_dirs, "/opt/local/include")
+
+ add_directory(library_dirs, "/usr/lib64")
+ add_directory(library_dirs, "/usr/lib")
add_directory(library_dirs, "/usr/local/lib")
# FIXME: check /opt/stuff directories here?
Ну и напоследок пример установки для CentOS:
Подразумевается, что нужная версия python и python-devel уже установлена в необходимом
виртуальном окружении.
yum install libjpeg libjpeg-devel zlib zlib-devel libtiff libtiff-devel freetype freetype-devel
wget http://effbot.org/downloads/Imaging-1.1.7.tar.gz
tar -zxvf Imaging-1.1.7.tar.gz
cd Imaging-1.1.7
Теперь патчим setup.py и продолжим уже в необходимом виртуальном окружении:
python setup.py build --force
python setup.py install
Автор: LuckySB