【问题标题】:Pillow (PIL) not supporting PNG files.. how to install ZLIB Compression Library?Pillow (PIL) 不支持 PNG 文件。如何安装 ZLIB 压缩库?
【发布时间】:2014-09-07 18:08:48
【问题描述】:

我通过这样做安装了枕头

pip install Pillow

我没有安装 PIL。在我安装 Pillow 之后,它说:

ZLIB (PNG/ZIP) support not available

当我尝试创建 PNG 图像的缩略图时,它给了我一个错误提示

IOError at /createThumbnail/
decoder zip not available

我阅读了 Pillow 文档 (http://pillow.readthedocs.org/en/latest/handbook/image-file-formats.html#png),它说为了获得 PNG 支持,我需要“在构建 Python 映像库之前构建并安装 ZLIB 压缩库。有关详细信息,请参阅分发自述文件”。我阅读了原始的 PIL README (http://pillow.readthedocs.org/en/latest/original-readme.html),它说要安装

sudo apt-get install zlib1g-dev

我这样做了,Pillow 仍然不支持 PNG 文件。我什至尝试重新安装 Pillow,但也没有用。知道如何让 Pillow 支持 PNG 文件吗?

编辑: 我从这里下载 zlib: http://zlib.net/

然后按照此处的说明进行操作: http://petio.org/tools/zlib.html

我基本上只是提取下载的文件,然后从目录中运行这些代码:

$ ./configure -s --prefix=/usr
$ make
$ sudo su
make install

然后我卸载并重新安装了 Pillow,它现在确实支持 PNG,但是,我仍然收到完全相同的错误消息(解码器 zip 不可用)..知道为什么吗?

【问题讨论】:

    标签: python png python-imaging-library zlib pillow


    【解决方案1】:

    Read me

    构建库。我们建议您进行就地构建, 并在安装前运行自检。

        $ cd Imaging-1.1.7
        $ python setup.py build_ext -i
        $ python selftest.py
    

    在构建过程中,setup.py 会显示一个摘要 报告列出了它找到的外部组件。自己- test 会显示类似的报告,包含哪些外部组件 在实际构建文件中找到的测试:

        ----------------------------------------------------------------
        PIL 1.1.7 SETUP SUMMARY
        ----------------------------------------------------------------
        *** TKINTER support not available (Tcl/Tk 8.5 libraries needed)
        --- JPEG support available
        --- ZLIB (PNG/ZIP) support available
        --- FREETYPE support available
        ----------------------------------------------------------------
    

    确保包含您需要的可选组件。

    如果构建脚本找不到给定的组件,您可以编辑 setup.py 文件并设置适当的 ROOT 变量。有关详细信息, 请参阅文件中的说明。

    如果构建脚本找到了组件,但测试却找不到 识别它,尝试重建 所有 模块:

        $ python setup.py clean
        $ python setup.py build_ext -i
    

    【讨论】:

    • 啊,完美,谢谢。我 cd 到 Imaging-1.7.7 运行了你提到的两个命令,在我运行它之后,在总结中,它说 FREETYPE 和 TKINTER 支持不可用。我继续阅读自述文件并安装了 $ python setup.py 并安装了它,然后它停止给我错误。 (我不知道为什么它说它不支持其他文件——可能是因为我使用的是一个非常旧的 Lubuntu 版本,我什至不能用 apt-get 安装任何东西,因为版本已经过时了——但是安装 Imaging-1.7.7 确实解决了这个问题
    【解决方案2】:

    这是在我的 virtualenv 中运行 OS X El Capitan 时真正帮助我的原因:

    pip install -I --no-cache-dir pillow --global-option=build_ext --global-option="-I$(xcrun --show-sdk-path)/usr/include"

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-01-24
      • 1970-01-01
      • 2022-01-10
      • 2014-03-22
      • 2017-01-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多