【发布时间】:2014-06-06 20:09:13
【问题描述】:
在有人说"sudo apt-get install libjpeg-dev" 或类似的话之前,我没有 sudo 访问权限。我在一个不允许我访问 sudo 的服务器上。所以我必须在我的本地目录中完成这一切。这是我能做到的唯一方法。
我需要一个 python 脚本来调整图像的大小。它适用于 png 文件,但适用于 jpeg 文件,并在标题中列出错误。
以下是我目前采取的步骤:
- 下载
libjpeg-dev安装到$HOME/jpegtest,所以jpegtest/文件夹里面是lib/,include/等等 - 我手动下载了
Pillow并解压到$HOME/Pillow - 我将
setup.py字段编辑为JPEG_ROOT为libinclude(<absolute path to jpegtest>) -
我构建并编译了
Pillow,它安装到$HOME//.pythonbrew/pythons/Python-2.7.5/lib/python2.7/site-packages/Pillow-2.4.0-py2.7-linux-x86_64.egg输出的重要部分如下:*** TKINTER support not available --- JPEG support available *** OPENJPEG (JPEG2000) support not available --- ZLIB (PNG/ZIP) support available *** LIBTIFF support not available *** FREETYPE2 support not available *** LITTLECMS2 support not available *** WEBP support not available *** WEBPMUX support not available
所以我假设这意味着 JPEG 支持将起作用,但是当我运行我的程序时它说:
IOError:解码器 jpeg 不可用
在输入此内容时,我还注意到Pillow recognizes JPEG encoder on install, but not use 的问题,听起来和我的很接近,所以我在那里尝试了解决方案:
ln -s /media/sdl1/home/midnight/jpegtest/lib/libjpeg.so /media/sdl1/home/midnight/.pythonbrew/pythons/Python-2.7.5/lib
但我仍然有同样的错误。
我已经解决这个问题大约两天了,但我不完全确定该怎么做。如果有人可以提供一些帮助,那将非常有帮助。
【问题讨论】:
-
也许可以试试
ldd,就像这个答案stackoverflow.com/a/24397115/162768 一样,看看它在寻找什么路径。 -
听起来你应该让系统管理员在服务器根目录上安装你需要的库。
-
您确定您使用的 Python 解释器来自您的 Pythonbrew 设置,而不是包含的基本操作系统(可能在没有 JPEG 支持的情况下编译了 Pillow)?