Получение ошибки при запуске демонстрационной страницы django-cms

Я испробовал всю процедуру установки django-cms, после чего, когда я пытаюсь запустить демо-страницу, я получаю следующую ошибку.

(djvenv2)shan@shan:~/workspace/projects/djvenv$ pip freeze
Django==1.6.2
PIL==1.1.7
Pillow==2.4.0
South==0.8.4
argparse==1.2.1
dj-database-url==0.3.0
django-classy-tags==0.5.1
django-cms==3.0
django-mptt==0.6.0
django-sekizai==0.7
djangocms-admin-style==0.2.2
djangocms-installer==0.4.1
html5lib==0.999
six==1.6.1
wsgiref==0.1.2

(djvenv2)shan@shan:~/workspace/projects/djvenv$ djangocms -p . my_demo
Database configuration (in URL format) [default sqlite://localhost/project.db]:
django CMS version (choices: 2.4, 3.0, stable, develop) [default stable]:
Django version (choices: 1.4, 1.5, 1.6, stable) [default 1.5]:
Activate Django I18N / L10N setting (choices: yes, no) [default yes]:
Install and configure reversion support (choices: yes, no) [default yes]:
Languages to enable. Option can be provided multiple times, or as a comma separated list: en
Optional default time zone [default America/Chicago]:
Activate Django timezone support (choices: yes, no) [default yes]:
Activate CMS permission management (choices: yes, no) [default yes]:
Use Twitter Bootstrap Theme (choices: yes, no) [default no]: yes
Load a starting page with examples after installation (choices: yes, no) [default no]: yes
INFO: Starting new HTTPS connection (1): pypi.python.org
Traceback (most recent call last):
  File "/home/shan/workspace/venv/djvenv2/bin/djangocms", line 9, in <module>
    load_entry_point('djangocms-installer==0.4.1', 'console_scripts', 'djangocms')()
  File "/home/shan/workspace/venv/djvenv2/local/lib/python2.7/site-packages/djangocms_installer/main.py", line 24, in execute
    install.check_install(config_data)
  File "/home/shan/workspace/venv/djvenv2/local/lib/python2.7/site-packages/djangocms_installer/install/__init__.py", line 52, in check_install
    raise EnvironmentError("\n".join(errors))
EnvironmentError: Pillow is not compiled with JPEG support, see 'Libraries installation issues' documentation section.

person Shanmu    schedule 15.04.2014    source источник


Ответы (4)


Добавьте поддержку JPEG в Pillow, в Ubuntu вы можете сделать следующее:

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

# Link the libraries for Pillow to find them:

sudo ln -s /usr/lib/`uname -i`-linux-gnu/libfreetype.so /usr/lib/
sudo ln -s /usr/lib/`uname -i`-linux-gnu/libjpeg.so /usr/lib/
sudo ln -s /usr/lib/`uname -i`-linux-gnu/libz.so /usr/lib/

# reinstall Pillow (In case you have Pillow already installed)
pip install --upgrade --force-reinstall pillow
person petkostas    schedule 15.04.2014
comment
после того, как он все еще выдает ту же ошибку о вещах pil и jpeg ... поэтому я удаляю подушку pip и снова подушку pip install ... что решило проблему - person Zubair Alam; 25.05.2014
comment
Привет. Эта команда использовала sudo pip install --upgrade pillow - person Robin Gomez; 09.07.2014
comment
для пользователя Centos просто установите libjpeg-turbo-devel libpng-devel zlib-devel - person xdays; 26.11.2014
comment
@LawrenceDeSouza - у меня была та же проблема, что и у вас. Что мне нужно было сделать, так это удалить сборку Pillow в ~/.cache/pil/.../ - person Dog eat cat world; 19.06.2015

Установите необходимые библиотеки:

http://pillow.readthedocs.org/en/latest/installation.html#linux-installation

Затем удалите и переустановите Pillow в своем виртуальном окружении.

pip uninstall Pillow
pip install --no-cache-dir Pillow
person gordon86    schedule 02.06.2015

Я действительно нашел выбранное здесь решение очень полезным. Я также обнаружил, что установщику djangcms нужна определенная версия Pillow, в результате чего модуль JPEG по какой-либо причине не загружается. На момент написания этой статьи он хотел Pillow==2.8.0, но последней версией, которую устанавливал pip --upgrade, была 2.9.x. Я запустил pip install --no-cache-dir --upgrade --force-reinstall pillow==2.8.0, и это, похоже, удовлетворило требованиям установщика djangocms, чтобы сохранить совместимость с JPEG.

Вы можете убедиться, что поддержка JPEG установлена, открыв оболочку python в файле virtualenv.

from PIL import Image

i = Image.open('/path/to/a.jpg')
i.load()

Вы либо получите дескриптор загруженного изображения, либо исключение, если нет поддержки JPEG.

Итак, pip успешно установил пакет Pillow с поддержкой JPEG, но как только я запустил установщик djangocms, он заменил его пакетом Pillow без поддержки JPEG. Вам нужно соответствовать версии Pillow, которую хочет установить djangocms. Я не знаю, где этот конфиг, но вы можете понять это с помощью pip freeze или pip list после неудачной установки.

Надеюсь, это кому-то поможет.

person Eric    schedule 07.07.2015

Я столкнулся с той же проблемой на моей виртуальной машине BitNami LAMP и не смог решить ее, связав отсутствующие файлы для Pillow. Наконец, я решил это:

сначала найдите библиотеку

(venv)...$ find 2>/dev/null / -name libz.so
/opt/bitnami/common/lib/libz.so

теперь добавьте каталог lib в pip

(venv)...$ pip install --global-option=build_ext --global-option="-L/opt/bitnami/common/lib" --global-option="-I/opt/bitnami/common/include" --upgrade --force-reinstall pillow

оно работает:

--------------------------------------------------------------------
PIL SETUP SUMMARY
--------------------------------------------------------------------
version      Pillow 2.7.0
platform     linux2 2.7.6 (default, Mar 22 2014, 22:59:56)
             [GCC 4.8.2]
--------------------------------------------------------------------
*** TKINTER support not available
--- JPEG support available
*** OPENJPEG (JPEG2000) support not available
--- ZLIB (PNG/ZIP) support available
--- LIBTIFF support available
--- FREETYPE2 support available
*** LITTLECMS2 support not available
*** WEBP support not available
*** WEBPMUX support not available
--------------------------------------------------------------------

также см. python pip указывает каталог библиотеки и каталог включения

person Zheng.xx    schedule 25.03.2015