码迷,mamicode.com
首页 > 其他好文 > 详细

whereis libjpeg.so.7

时间:2015-03-12 22:24:43      阅读:148      评论:0      收藏:0      [点我收藏+]

标签:

在服务器上调用import ImageFont时报如下错误

ImportError: The _imagingft C module is not installed

(服务器为Centos5.5, python版本2.7.3)

第一反应是pil安装的有问题,通过yum install freetype-devel libjpeg-devel libpng-devel

把依赖的相关库重新安装一遍,然后通过pip uninstall -y pil卸载pil,然后到http://effbot.org/downloads/Imaging-1.1.7.tar.gz下载源码包,修改set.py中JPEG_ROOT, ZLIB_ROOT,FREETYPE_ROOT等路径,然后执行

python setup.py build_ext -i

python setup.py build

python setup.py install

重新安装完问题依旧。

后来偶然发现官网的一篇文章:http://effbot.org/zone/pil-imaging-not-installed.htm,有所启发,首先判断_imaging是否正常安装,如果安装过程没有报错,在PIL的包下应该能找到,我的在/usr/local/python-2.7.3/lib/python2.7/site-packages/PIL/_imaging.so(文件名后缀因操作系统而异,比如_imaging.pyd或者_imaging.dll),下一步判断python是否能找到_imaging.so,这个通过python -v ,然后执行import Image显示的调试信息中找到_imaging.so是否被导入,如果到这一步都是ok的,那就说明是_imaing.so本身的问题了,果然在python中执行:import _imaing,提示

»> import _imaging

Traceback (most recent call last):

  File “<stdin>”, line 1, in <module>

ImportError: libjpeg.so.7: cannot open shared object file: No such file or directory

说明系统在指定的目录找不到libjpeg.so.7这个库,而libjpeg是正常安装的,通过whereis libjpeg.so.7可以找到实际安装路径(/usr/local/lib/libjpeg.so.7),这时只需要在系统的搜索路径下建个软链接到实际安装路径即可(ln -s /usr/local/lib/libjpeg.so.7 /usr/lib/)

whereis libjpeg.so.7

标签:

原文地址:http://www.cnblogs.com/apexchu/p/4333480.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!