ubuntu14.04 安装PIL库出现OError: decoder jpeg not available 的解决方案
出现
OError: decoder jpeg not available
的原因是,没有装JPEG的库,同时要支持png图片的话还要装 ZLIB、FREETYPE2、LITTLECMS的库文件。
先说第一种解决方案:完整安装这些库!!!!
安装方法:http://cn-popeye.iteye.com/blog/1236691 在这篇博客里作者很详细的说了下载地址和安装方法,我这里只是抄过来。
1. install zlib (ubuntu 官方源没有zlib,别想apt-get了)
下载zlib,(zlib.net已墙,可以去SF.net),url:http://sourceforge.net/projects/libpng/files/zlib/1.2.5/zlib-1.2.5.tar.gz/download?use_mirror=superb-dca2
$ tar -xvzf zlib-1.2.5.tar.gz
$ cd zlib-1.2.5
$ ./configure --prefix=/usr/local
$ make
$ sudo make install
2.install png(忘记apt-get吧)
$ wget ftp://ftp.simplesystems.org/pub/libpng/png/src/libpng-1.5.6.tar.gz (如果文件不存在就浏览 /src/目录查找一下最新版)
$ tar -xvzf libpng-1.5.6.tar.gz
$ cd libpng-1.5.6
$ ./configure --prefix=/usr/local
$ make
$ sudo make install
3.install freetype (忘记apt-get吧)
$ wget http://nchc.dl.sourceforge.net/project/freetype/freetype2/2.4.7/freetype-2.4.7.tar.gz
$ tar -xvzf freetype-2.4.7.tar.gz
$ cd freetype-2.4.7/
$ ./configure --prefix=/usr/local
$ make
$ make install
4.install jpeg (忘记apt-get吧)
$ wget http://www.ijg.org/files/jpegsrc.v8c.tar.gz
$ tar -xvzf jpegsrc.v8c.tar.gz
$ cd jpeg-8c/
$ ./configure --prefix=/usr/local
$ make
$ sudo make install
然后,安装需要的 devel库(现在是想起apt-get的时候了)!!!!!!!!
$ sudo apt-get install libjpeg8-dev
$ sudo apt-get install libpng12-dev
$ sudo apt-get install libfreetype6-dev
$ sudo apt-get install zlib1g-dev
现在,安装 PIL( Python Imaging Library )!!!!!!!!
$ wget http://effbot.org/downloads/Imaging-1.1.7.tar.gz
$ tar -xvzf Imaging-1.1.7.tar.gz
$ cd Imaging-1.1.7/
修改setup.py文件:
$ nano setup.py
修改如下:
JPEG_ROOT = "/usr/local/lib"
ZLIB_ROOT = "/usr/local/lib"
FREETYPE_ROOT = "/usr/local/lib"
检查是否支持:
$ python setup.py build_ext -i
running build_ext
--------------------------------------------------------------------
PIL 1.1.7 SETUP SUMMARY
--------------------------------------------------------------------
version 1.1.7
platform linux2 2.7.1+ (r271:86832, Apr 11 2011, 18:13:53)
[GCC 4.5.2]
--------------------------------------------------------------------
*** TKINTER support not available
--- JPEG support available -----------------------> OK! !!!!!!!
--- ZLIB (PNG/ZIP) support available -----------------------> OK! !!!!!!!
--- FREETYPE2 support available -----------------------> OK! !!!!!!!
*** LITTLECMS support not available
--------------------------------------------------------------------
To add a missing option, make sure you have the required
library, and set the corresponding ROOT variable in the
setup.py script.To check the build, run the selftest.py script.
正式安装:
$ python setup.py build
$ sudo python setup.py install
至此,安装结束。博主也是按照这种方法装的,完全可以用。(我之是在编译了之后太激动了以至于忘了安装,所以一直不能用,最终还是找到了问题所在。这个方法从根本上解决了问题)
说明:如果不是按这种方法装的话,装完之后一定要记得把JPEG,ZLIB,FREETYPE,LITTLECMS的那几个库链接到PIL里边,不然调用不了。
第二种解决方案:
也是在网上看到了,是找了一个替换的库 pillow 。 具体的方法我就不在这里写了,可以到原文里去看。 其中原文中提到作者看到的那篇文章《PIL zip jpeg decoders not working on runtime but work on install/selftest 》里边提到的问题,说装了那些库之后,显示PIL正常支持,但是程序依然运行不起来,我估计原因就是没有把库添加到PIL中去。
原文链接:解决virtualenv下安装Python PIL的support not available问题
第三种解决方案:
是《Ubuntu下安装PIL模块》中提出来的。
Ubuntu linux上部署tornaod应用。处理图片的时候发现Image模块报错:
IOError: decoder jpeg not available
提示没有安装jpeg模块。
先卸载PIL(我是用pip安装的,其他安装的话,请酌情解决。)
sudo pip uninstall PIL
安装Ubuntu打包好的python-imaging模块,便可成功解决。
sudo apt-get install python-imaging
终于彻底搞定了这个东西~
!!!!!!!!剧终!!!!!!!
ubuntu14.04 安装PIL库出现OError: decoder jpeg not available 的解决方案的更多相关文章
- ubuntu14.04安装cuda
1 装系统时候注意,另外14.04要好于12.04,自带了无线驱动 ubuntu14.04安装完不要update 2 安装cuda和cudnn http://blog.csdn.net/l297969 ...
- Ubuntu14.04 安装配置Opencv3.0和Python2.7
http://blog.csdn.NET/u010381648/article/details/49452023 Install OpenCV 3.0 and Python 2.7+ on Ubunt ...
- Ubuntu14.04安装配置web/ftp/tftp/dns服务器
目录: 1.安装ftp服务器vsftpd --基于tcp,需要帐号密码 2.安装tftp服务器tftpd-hpa,tftp-hpa --udp 3.web服务器--使用Apache2+Mysql+PH ...
- Ubuntu14.04安装intel集显驱动
Ubuntu14.04安装intel集显驱动 标签(空格分隔): ubuntu linux 驱动安装 1.查看本机显卡型号 使用lspci命令来获取PCI接口硬件信息 o@o-pc:~$ lspci ...
- Ubuntu14.04安装中文输入法以及解决Gedit中文乱码问题
1 设置中文显示环境 1. 打开System Settings 2. 打开Personal-> Language Support. 会弹出如下对话框,提示你“语言支持没安装完整”. 点击“Rem ...
- Ubuntu14.04安装配置ndnSIM
Ubuntu14.04安装配置ndnSIM 预环境 Ubuntu14.04官方系统 请先使用sudo apt-get update更新一下源列表 安装步骤 安装boost-lib sudo apt-g ...
- Ubuntu14.04 安装QQ国际版wine-qqintl
Ubuntu14.04安装qq国际版方式: 首先下载,链接为: https://pan.baidu.com/s/1boPitVD 密码:jp1j 也可去Ubuntu中文的Kylin(优麒麟)官网下载 ...
- 一.ubuntu14.04安装、亮度设置、显卡设置等一体化讲解
一.ubuntu14.04安装 安装步骤很简单的,相信你只要知道并且决定安装ubuntu,你就不会在安装上有问题,下载网址 http://www.ithome.com/html/soft/81539. ...
- Ubuntu14.04安装samba
Ubuntu14.04安装samba 按照惯例,首先介绍Samba.Samba是在Linux系统上实现的SMB(Server Messages Block,信息服务块)协议的一款免费软件.它实现在局域 ...
随机推荐
- Python之socketserver模块和验证客户端链接的合法性
验证客户端链接的合法性 分布式系统中实现一个简单的客户端链接认证功能 #_*_coding:utf-8_*_ from socket import * import hmac,os secret_ke ...
- 32位centos6.5 mysql rpm包下载
查看centos版本号和位数: http://www.cnblogs.com/grey-wolf/p/7472507.html mysql下载: 1.进入https://dev.mysql.com/d ...
- 南京邮电大学java程序设计作业在线编程第一次作业
王利国的"Java语言程序设计第1次作业(2018)"详细 作业结果详细 总分:100 选择题得分:40 1. Java语言中,基本数据类型一共有( )种. A.16 B.2 C ...
- hdu2674 N!Again---思维
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=2674 题目大意: 求n!%2009的值 思路: 由于模2009,所以大于等于2009的直接为0,前2 ...
- ACE入门——ACE构建
ACE(ADAPTIVE Communication Environment),ACE入门的第一课就是要学习怎么在自己的系统上构建ACE. ACE是跨平台的,这是它的一个很重要的特性,ACE支持很多的 ...
- Vue还有这种操作?浅析几个新手常常忽略的API
一:实现子组件与父组件双向绑定的"sync": 一般来说,我们实现父子组件值的传递通常使用的是[props]和自定义事件[$emit].父组件通过[props]将值传给子组件,子组 ...
- [USACO 12DEC]Running Away From the Barn
Description It's milking time at Farmer John's farm, but the cows have all run away! Farmer John nee ...
- codeforces 868B Race Against Time
Have you ever tried to explain to the coordinator, why it is eight hours to the contest and not a si ...
- ●洛谷P1083 借教室
题链: https://www.luogu.org/problemnew/show/P1083题解: 二分,差分 显然具有二分性: 如果只考虑1~p个人,就会在某一天无法满足, 那么显然只考虑1~[p ...
- ●BZOJ 2500 幸福的道路
题链: http://www.lydsy.com/JudgeOnline/problem.php?id=2500 题解: DFS,单调队列 首先有一个结论,距离树上某一个点最远的点一定是树的直径的一个 ...