Python PIL 找不到我的 "libjpeg"

标签 python python-imaging-library

我无法使用 PIL,因为它找不到我的 libjpeg!

首先,我默认安装了 PIL。当我运行 selftest.py 时,它给了我:

IOError: decoder jpeg not available 1
items had failures:    1 of  57 in
selftest.testimage
***Test Failed*** 1 failures.
*** 1 tests of 57 failed.

然后,我按照网上的说明将PIL的setup.py修改为

JPEG_ROOT = "/usr/lib"

因为当我找到 libjpeg 时,这是我得到的:

locate libjpeg 
/usr/lib/libjpeg.so.62
/usr/lib/libjpeg.so.62.0.0
/usr/lib64/libjpeg.so.62
/usr/lib64/libjpeg.so.62.0.0
/usr/share/doc/libjpeg-6b
/usr/share/doc/libjpeg-6b/README
/usr/share/doc/libjpeg-6b/usage.doc
/var/cache/yum/base/packages/libjpeg-6b-37.i386.rpm
/var/cache/yum/base/packages/libjpeg-6b-37.x86_64.rpm

因此,我再次运行了 setup.py install...并执行了 selftest.py。 我仍然遇到同样的错误!

最佳答案

您至少要安装 3 个 header 集。如果你想对付 Tiff 的,就多 1 个

freetype、libjpeg、zlib 所有这些都将在 CentOS 上的以下软件包中:

== 32 位: zlib-devel.i386 libjpeg-devel.i386 freetype-devel.i386

== 64 位: zlib-devel.x86_64 libjpeg-devel.x86_64 freetype-devel.x86_64

和之前一样,您需要在 setup.py 文件中编辑以下变量:

FREETYPE_ROOT JPEG_根目录 ZLIB_ROOT

根据您的平台将这些值设置为/usr/lib 或/usr/lib64。完成后,您很可能想要运行

python setup.py build --force
python setup.py install

这将强制为 PIL 重建所有库并重新安装它们。

关于Python PIL 找不到我的 "libjpeg",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1486157/

相关文章:

python - 无法导入 PIL 图像

Python PIL 从图像中提取数字

python - 如何在 matplotlib 的轴外画一条线(在图形坐标中)

python - 键盘操作之间的计时器

python - SQLAlchemy 中需要多少个 Base 或 MetaData 实例?

python - 如何使用 OpenCV 检测图像帧中的对象?

python - 使用 PIL 在 Python 中进行图像处理并面对 fromarray() 的问题

python - Django - 旋转图像并保存

python - 根据 RGB 值更改图像的颜色

python - 如何(正确地)在 AWS Lambda 函数中使用外部凭证?