在Mac OS系统上安装Python的Pillow库的教程


Posted in Python onNovember 20, 2015

今天帮朋友做个python的小工具,发现系统上缺少ptyhon的支持库,返回如下信息

ImportError: No module named PIL 
然后就下载安装,因为机器上也没有python的管理工具pip,所以也一并安装
1. 安装pip

sudo easy_install pip

pip 安装成功就可以直接安装pil或者pillow

2. 通过命令pip install pil

pip install Pil
Downloading/unpacking Pil 
 Could not find any downloads that satisfy the requirement Pil 
 Some externally hosted files were ignored (use --allow-external Pil to allow). 
Cleaning up... 
No distributions at all found for Pil 
Storing debug log for failure in /Users/macbook/Library/Logs/pip.log

3. 所以就安装pillow

pip install --use-wheel Pillow
Downloading/unpacking Pillow 
 Downloading Pillow-2.4.0.zip (6.5MB): 5.0MB downloaded 
Cleaning up...

弄了会别的回来发现还没有下载完,这叫一个慢呀,于是放弃
4. Git

通过git下载源码地址https://github.com/python-imaging/Pillow

git clone https://github.com/python-imaging/Pillow.git

然后开始编译安装

4.1

python setup.py build_ext -i

编译完之后会提示运行测试例子,并且发现JPEG support not available

-------------------------------------------------------------------- 
version   Pillow 2.4.0 
platform   darwin 2.7.5 (default, Aug 25 2013, 00:04:04) 
       [GCC 4.2.1 Compatible Apple LLVM 5.0 (clang-500.0.68)] 
-------------------------------------------------------------------- 
--- TKINTER support available 
*** JPEG support not available 
*** OPENJPEG (JPEG2000) support not available 
--- ZLIB (PNG/ZIP) support available 
*** LIBTIFF support not available 
--- FREETYPE2 support available 
*** LITTLECMS2 support not available 
*** WEBP support not available 
*** WEBPMUX 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.

4.2 因为JPEG support not available,运行python selftest.py报告错误

1 tests of 57 failed. 

于是只好卸载pillow

可以通过pip命令来卸载

pip uninstall pillow 
sudo pip uninstall pillow
Password: 
Uninstalling Pillow: 
 /Library/Python/2.7/site-packages/Pillow-2.4.0-py2.7-macosx-10.9-intel.egg 
 /usr/local/bin/pilconvert.py 
 /usr/local/bin/pildriver.py 
 /usr/local/bin/pilfile.py 
 /usr/local/bin/pilfont.py 
 /usr/local/bin/pilprint.py 
Proceed (y/n)? y  
  Successfully uninstalled Pillow 

成功之后需要安装libjpeg的支持

brew install libjpeg

安装成功之后重新编译pillow

-------------------------------------------------------------------- 
version   Pillow 2.4.0 
platform   darwin 2.7.5 (default, Aug 25 2013, 00:04:04) 
       [GCC 4.2.1 Compatible Apple LLVM 5.0 (clang-500.0.68)] 
-------------------------------------------------------------------- 
--- TKINTER support available 
--- JPEG support available 
*** OPENJPEG (JPEG2000) support not available 
--- ZLIB (PNG/ZIP) support available 
*** LIBTIFF support not available 
--- FREETYPE2 support available 
*** LITTLECMS2 support not available 
*** WEBP support not available 
*** WEBPMUX support not available 
-------------------------------------------------------------------- 
python selftest.py  

-------------------------------------------------------------------- 
Pillow 2.4.0 TEST SUMMARY  
-------------------------------------------------------------------- 
Python modules loaded from /Users/macbook/yyang/app-devel-source/python/Pillow/PIL 
Binary modules loaded from /Users/macbook/yyang/app-devel-source/python/Pillow/PIL 
-------------------------------------------------------------------- 
--- PIL CORE support ok 
--- TKINTER support ok 
--- JPEG support ok 
*** JPEG 2000 support not installed 
--- ZLIB (PNG/ZIP) support ok 
*** LIBTIFF support not installed 
--- FREETYPE2 support ok 
*** LITTLECMS2 support not installed 
*** WEBP support not installed 
-------------------------------------------------------------------- 
Running selftest: 
--- 57 tests passed.

最后执行安装

sudo python setup.py install
Python 相关文章推荐
Python中列表(list)操作方法汇总
Aug 18 Python
解决python2.7用pip安装包时出现错误的问题
Jan 23 Python
python模拟事件触发机制详解
Jan 19 Python
python生成圆形图片的方法
Mar 25 Python
Django中Model的使用方法教程
Mar 07 Python
python实现对指定输入的字符串逆序输出的6种方法
Apr 26 Python
Python XML转Json之XML2Dict的使用方法
Jan 15 Python
django配置app中的静态文件步骤
Mar 27 Python
Django+RestFramework API接口及接口文档并返回json数据操作
Jul 12 Python
Django drf请求模块源码解析
Jun 08 Python
python读取mnist数据集方法案例详解
Sep 04 Python
Python内置包对JSON文件数据进行编码和解码
Apr 12 Python
详解Python编程中time模块的使用
Nov 20 #Python
Windows上配置Emacs来开发Python及用Python扩展Emacs
Nov 20 #Python
将Emacs打造成强大的Python代码编辑工具
Nov 20 #Python
Python聚类算法之DBSACN实例分析
Nov 20 #Python
Python聚类算法之凝聚层次聚类实例分析
Nov 20 #Python
Python聚类算法之基本K均值实例详解
Nov 20 #Python
Python实现将xml导入至excel
Nov 20 #Python
You might like
推荐几款用 Sublime Text 开发 Laravel 所用到的插件
2014/10/30 PHP
js玩一玩WSH吧
2007/02/23 Javascript
用window.location.href实现刷新另个框架页面
2007/03/07 Javascript
深入理解JavaScript系列(16) 闭包(Closures)
2012/04/12 Javascript
利用了jquery的ajax实现二级联互动菜单
2013/12/02 Javascript
jquery.cookie用法详细解析
2013/12/18 Javascript
js身份证判断方法支持15位和18位
2014/03/18 Javascript
动态加载iframe时get请求传递中文参数乱码解决方法
2014/05/07 Javascript
火狐下input焦点无法重复获取问题的解决方法
2014/06/16 Javascript
抛弃Nginx使用nodejs做反向代理服务器
2014/07/17 NodeJs
jquery中filter方法用法实例分析
2015/02/06 Javascript
3个可以改善用户体验的AngularJS指令介绍
2015/06/18 Javascript
举例详解Python中smtplib模块处理电子邮件的使用
2015/06/24 Javascript
JS实现弹出浮动窗口(支持鼠标拖动和关闭)实例详解
2015/08/06 Javascript
信息页文内画中画广告js实现代码(文中加载广告方式)
2016/01/03 Javascript
Javascript实现信息滚动效果
2017/05/18 Javascript
Vue2.0实现将页面中表格数据导出excel的实例
2017/08/09 Javascript
浅谈Angular2 模块懒加载的方法
2017/10/04 Javascript
vue使用 better-scroll的参数和方法详解
2018/01/25 Javascript
Vuejs在v-for中,利用index来对第一项添加class的方法
2018/03/03 Javascript
Vue+ElementUI使用vue-pdf实现预览功能
2019/11/26 Javascript
JavaScript修改注册表实例代码
2020/01/05 Javascript
vue子组件改变父组件传递的prop值通过sync实现数据双向绑定(DEMO)
2020/02/01 Javascript
[04:28]2014DOTA2国际邀请赛 采访小兔子LGD挺进钥匙体育馆
2014/07/14 DOTA
python的绘图工具matplotlib使用实例
2014/07/03 Python
Django中提示消息messages的设置方式
2019/11/15 Python
html5使用canvas实现图片下载功能的示例代码
2017/08/26 HTML / CSS
HTML5图片预览实例分享
2014/06/04 HTML / CSS
Perfume’s Club美国官网:西班牙第一家在线美容店
2020/06/10 全球购物
机关财务管理制度
2014/01/17 职场文书
化工操作工岗位职责
2014/04/29 职场文书
党员群众路线对照检查材料思想汇报
2014/09/17 职场文书
党员干部作风建设思想汇报范文
2014/10/25 职场文书
2015年五一劳动节慰问信
2015/03/23 职场文书
聘用合同范本
2015/09/21 职场文书
读《瓦尔登湖》有感:每个人都需要一个瓦尔登湖
2019/10/17 职场文书