1、安装
下载安装包,me用的是Imaging-1.1.7.tar.gz;
方法:
安装前请确保这些 libjpeg libjpeg-devel zlib zlib-devel freetype freetype-devel lcms lcms-devel已安装,没有的话,执行:
yum install libjpeg libjpeg-devel zlib zlib-devel freetype freetype-devel lcms lcms-deve
获取Imaging-1.1.7.tar.gz并安装
# 下载
wget http://effbot.org/downloads/Imaging-1.1.7.tar.gz
tar zxvf Imaging-1.1.7.tar.gz # 解压
cd Imaging-1.1.7
vim setup.py
# 修改
ZLIB_ROOT = ('/usr/local/zlib/lib','/usr/local/zlib/include') # 或者使用libinclude('/usr/lib/zlib')
FREETYPE_ROOT = ('/usr/local/freetype/lib','/usr/local/freetype/include')
JPEG_ROOT = ('/usr/local/jpeg8/lib','/usr/local/jpeg8/include')
TIFF_ROOT = ('/usr/lib','/usr/lib64')
# 以上文件的具体位置,请参考自己的电脑,使用 find / -name xxx 可以去查找
# 修改完成后
python setup.py install
#ok
测试
在安装完成后,一定要进行测试,是否正常:
[root@AY1234 /] python # 进入python的解释器
>>> import PIL
>>> import Image
>>> import _imaging
>>> import ImageFont # 可能会出现 The _imaging C module is not installed
如果都没有报错,说明正确安装
2、可能遇到的错误
a、ImportError:The _imaging C module is not installed
解决:
第一步:如果是按照上面的方式安装的,也出现了这样的错误,请看第二步;如果不是,请按照上边的方式重新安装PIL;
第二步:如果你是在开发阶段或者已经部署到服务但以开发模式运行,通过访问和图片处理(如生产验证码等)有关的网页而报错,请你转到命令行,运行python -v,进行错误查找,引起这个错误的原因可能是找不到 _imaging.so相关的连接库造成的,具体查找方式,请参考另一篇我转载的文章http://my.oschina.net/shniu/blog/206386;
找到最后的结果就是:确实没有找到 _imaging.so 在哪
find / -name _imaging.so* # 找到在哪
# 做个软连接就行了