作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我看到这个问题在整个互联网上都被问到,我已经尝试了所有的问题,但我仍然无法让 PIL 工作。
我尝试通过以下方式符号链接(symbolic link) zlib、jpeg 等库:
sudo ln -s /usr/lib/x86_64-linux-gnu/libfreetype.so /usr/lib/
sudo ln -s /usr/lib/x86_64-linux-gnu/libz.so /usr/lib/
sudo ln -s /usr/lib/x86_64-linux-gnu/libjpeg.so /usr/lib/
我尝试编辑 setup.py
文件,添加以下行:
add_directory(library_dirs, "/usr/lib/x86_64-linux-gnu")
事实上,运行 $ sudo python setup.py install
显示 JPEG、ZLIB/PNG 等支持可用。 (我正在为 2.5 和 2.7 安装它,两者都不起作用)
sudo python2.5 setup.py install
running install
running build
running build_py
running build_ext
--------------------------------------------------------------------
PIL 1.1.7 SETUP SUMMARY
--------------------------------------------------------------------
version 1.1.7
platform linux2 2.5.6 (r256:88840, Feb 1 2012, 15:55:08)
[GCC 4.5.2]
--------------------------------------------------------------------
*** TKINTER support not available
--- JPEG support available
--- ZLIB (PNG/ZIP) support available
--- FREETYPE2 support available
--- LITTLECMS support available
但毕竟,我仍然得到一个decoder %s not available
错误。
我已经无计可施了。还有什么我可能错过的吗?
我的环境:64 位 Ubuntu 11.04 在 VirtualBox VM 中运行。
这是我用来测试 PIL 是否有效的方法
$ python
>>> from PIL import Image
>>> im = Image.open("photo.jpg")
>>> im.rotate(45)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python2.7/dist-packages/PIL/Image.py", line 1359, in rotate
self.load()
File "/usr/local/lib/python2.7/dist-packages/PIL/ImageFile.py", line 189, in load
d = Image._getdecoder(self.mode, d, a, self.decoderconfig)
File "/usr/local/lib/python2.7/dist-packages/PIL/Image.py", line 385, in _getdecoder
raise IOError("decoder %s not available" % decoder_name)
IOError: decoder zip not available
>>>
最佳答案
一如既往,使用包管理器:
sudo apt-get install python-imaging
它会为您处理这一切。 packages可用。
在任何 Linux 发行版中手动安装都是一种浪费,除非软件包真的不存在。软件包维护人员花时间确保软件包正常工作和安装,没有必要重复他们的工作。特别是不要手动安装那些没有软件包优势的东西——没有自动更新,不容易删除等等……
关于python - 如何在 Ubuntu 11.04 中安装 PIL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9225514/
我是一名优秀的程序员,十分优秀!