3

我敢肯定在外面的某个地方有这个副本,但我看了看,我已经走到了尽头。我正在尝试让 PIL 在我的 mac OS X 10.8 上运行,以便我可以dev_appserver.py用来测试成像功能。首先我在安装 PIL 时遇到了麻烦,直到我得到 Homebrew 并使用brew install pil. 我认为 brew 安装了所有必要的依赖项,但是当我尝试在我的应用程序中调整 jpeg 的大小时,它显示IOError: decoder jpeg is not available. 所以我在网上看了看,大多数地方都说我需要(1)卸载 PIL,(2)从源代码安装 libjpeg 和(3)重新安装 PIL。所以,我brew uninstall PIL,然后

curl -O www.ijg.org/files/jpegsrc.v7.tar.gz
tar zxvf jpegsrc.v7.tar.gz
cd jpeg-7d/
./configure
make
make install

最后brew install pil。我重新启动 dev_appserver.py 并在 localhost 上重新加载页面,但同样的错误。我python从命令行测试了 pil

>>> from PIL.Image import Image
>>> f = open("someimagefile", "rb")
>>> i = Image()
>>> i.fromstring(f.read(), decoder_name="jpeg")
Traceback blah blah blah
IOError: decoder jpeg not available

我没有太多从命令行安装实用程序的经验,所以我可能错过了一些明显的东西。再一次,对不起,如果有重复,但就像我说的,我看了看,找不到任何似乎有效的东西。

4

2 回答 2

2

终于让它工作了!感谢@zgoda 和这个链接。以下是我为那些有同样问题的人最终采取的步骤:

首先确保没有安装 PIL。从http://www.ijg.org/files/jpegsrc.v8c.tar.gz下载 libjpeg ,解压./configuremake. 当我尝试make install它时找不到存储手册页的目录,因此安装失败。我查看了上面链接上的信息并决定

cp -r ~/Downloads/jpeg-6d/ /usr/local/jpeg

我怀疑安装是否顺利而不是那条线是没有必要的。

然后在 PIL 的 setup.py 中编辑以下行:

JPEG_ROOT = None

JPEG_ROOT = "/usr/local/jpeg"

最后:

$ python setup.py build
$ python setup.py install
于 2013-01-04T04:21:51.270 回答
0

PIL 在编译期间没有找到 libjpeg 头文件。有关如何指定标头(“包含”)位置的信息,请参阅您的构建系统文档,例如。作为环境变量。

于 2013-01-03T14:17:47.813 回答