【问题标题】:Getting error while running django-cms demo page运行 django-cms 演示页面时出错
【发布时间】:2014-05-29 11:42:33
【问题描述】:

我尝试了安装 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.

【问题讨论】:

    标签: django ubuntu-12.04 pip django-cms pillow


    【解决方案1】:

    为 Pillow 添加 JPEG 支持,在 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
    

    【讨论】:

    • 在关注它之后仍然会抛出关于 pil 和 jpeg 的相同错误...所以我 pip 卸载枕头并再次 pip 安装枕头...解决了问题
    • 你好。该命令使用sudo pip install --upgrade pillow
    • centos 用户只需安装libjpeg-turbo-devel libpng-devel zlib-devel
    • @LawrenceDeSouza - 我和你有同样的问题。我必须做的是删除 ~/.cache/pil/.../ 中的 Pillow 构建
    【解决方案2】:

    安装所需的库:

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

    然后在你的 virtualenv 中卸载并重新安装 Pillow

    pip uninstall Pillow
    pip install --no-cache-dir Pillow
    

    【讨论】:

      【解决方案3】:

      我实际上发现这里选择的解决方案很有帮助。我还发现 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 兼容性。

      您可以通过在 virtualenv 中打开 python shell 来验证是否安装了 JPEG 支持。

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

      如果不支持 JPEG,您将获得加载图像的句柄或异常。

      所以 pip 成功地安装了一个支持 JPEG 的 Pillow 包,但是一旦我运行 djangocms 安装程序,它就会用一个不支持 JPEG 的 Pillow 包替换它。您需要匹配 djangocms 安装程序所需的 Pillow 版本。我不知道该配置在哪里,但您可以在安装失败后使用pip freezepip list 找出答案。

      希望这对某人有所帮助。

      【讨论】:

        【解决方案4】:

        我在我的 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 specify a library directory and an include directory

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多