Requirements

  • CPython >=2.6 or >=3.3 or PyPy
  • cffi >= 1.0
  • libturbojpeg with headers

Install

1. pip3 install cffi

2. Ubuntu 安装libjpeg-turbo库

概述:简单说一下libjpeg-turbo和libjpeg的区别,这是在维基百科上看的。libjpeg-turbo是libjpeg的一个复刻,它采用单指令流多数据流(SIMD)指令来加速JPEG编码和解码基础效率。许多项目现在使用libjpeg-turbo而不是libjpeg。我也是看了这个,又看到很多人推荐libjpeg-turbo,所以自己也就装了一个。那么现在就看看如何安装吧。

  • github下载libjpeg-turbo源码。
git clone https://github.com/libjpeg-turbo/libjpeg-turbo.git
  • 安装编译依赖包。
sudo apt-get install nasm
  • 编译安装。

在源码中,BUILDING.md文件中,有详细告诉我们如何编译。截图如下: 

第一步,移动到源文件目录,并执行autoreconf -fiv 命令。

cd libjpeg-turbo
autoreconf -fiv

第二步,运行configure脚本并加上配置参数。我们就直接在源目录执行,不用创建build目录了。 
不过在运行之前,我们查看一下/usr/local/lib下有没有libjpeg.so*文件,有的话我们执行操作,删除这些文件。

sudo rm -rf /usr/local/lib/libjpeg.so*

否则,直接执行此步即可。

./configure --prefix=/usr/local  --mandir=/usr/local/share/man --with-jpeg8 --disable-static --docdir=/usr/local/share/doc/libjpeg-turbo-1.5.2

解释一下各项参数简单意思。 
–prefix=/usr/local 指定库安装路径 
–mandir=/usr/local/share/man 指定man文件(相关命令参考信息)安装路径 
–with-jpeg8 这个开关启用与libjpeg 版本8的兼容性,即可使用libjpeg8的API. 
–disable-static 阻止安装静态版本的库 
–docdir=/usr/local/share/doc/libjpeg-turbo-1.5.2 指定文档安装路径

第三步,编译及安装。

make
sudo make install

第四步,小测试。 
在源码目录执行make test命令。

make test

输出结果很长,我就只把最后结果贴下了。 

最后就是安装jpegtran-cffi

pip3 install jpegtran-cffi

  

安装 jpegtran-cffi 使用 from jpegtran import JPEGImage的更多相关文章

  1. python已安装好第三方库,pycharm import时仍标红的解决办法

    pip install pymysql之后导入import pymysql时候标红 发现 pymysql下方还是标红,不能正常导入 可以试用一下以下的办法 解决办法: 首先打开 Settings找到P ...

  2. Ubuntu16.04 anaconda3 opencv已经安装,但是无法import的问题

    解决anaconda中已经安装了opencv3,但无法import的问题 你可能遇见的问题: ImportError: No module named cv2 ImportError: libz-a1 ...

  3. [Python]安装完pip、pygame后,仍然import pygame报错

    按照<python编程从入门到实践>上的教程下载了pygame的whl文件进行安装, 在cmd窗口里import pygame提示无错误,在IDEL里程序也能正常运行, 但是pycharm ...

  4. 关于python pip安装第三方库 jieba 中文分词工具后提示"ImportError: cannot import name 'Random'"报错问题

    具体错误提示如下: >>> import jieba Traceback (most recent call last): File "<stdin>" ...

  5. Linux安装pytorch的具体过程以及其中出现问题的解决办法

    1.安装Anaconda 安装步骤参考了官网的说明:https://docs.anaconda.com/anaconda/install/linux.html 具体步骤如下: 首先,在官网下载地址 h ...

  6. 一般源码安装添加的GD库 是不支持 jpeg 格式的图片的

    一般源码安装添加的GD库 是不支持 jpeg 格式的图片的,只支持如下格式 GD Support enabled GD Version bundled (2.0.34 compatible) GIF ...

  7. RabbitMQ的安装过程

    原创文章转载请注明出处:@协思, http://zeeman.cnblogs.com 网上一些安装教程都较为繁琐,实际上只需要两个RPM包,几分钟即可完成一台实例部署. 准备下载Erlang包: ht ...

  8. Python JPype 在 Win7 下安装与使用

    JPype 是 Python调用 Java 代码的模块,需要Java SE Runtime Environment (JRE)的支持. 个人安装环境: Windows 7 64bit + Python ...

  9. sublime text3 常用插件安装

    1.Package Control 按Ctrl+~调出console(或者view>show console) 粘贴以下代码到底部命令行并回车: import urllib.request,os ...

随机推荐

  1. MySQL用source命令导入不记入binlog中【原创】

    试验环境,MySQL主主复制 主库10.72.16.112 从库10.72.16.50 一直有个疑问,利用sql_log_bin=0可以临时在客户端停止将操作记入binlog中,如果使用source命 ...

  2. Linux将rm命令设置为回收站【转】

    一个方案就是重定向 rm 命令以嫁接为 mv 命令,相当于给 Linux 系统定制了一个回收站. 实现方式如下: ### 重定义rm命令 ### # 定义回收站目录 trash_path='~/.tr ...

  3. python中的os.listdir()函数

    os.listdir() 方法用于返回指定的文件夹包含的文件或文件夹的名字的列表.这个列表以字母顺序. 它不包括 '.' 和'..' 即使它在文件夹中. 只支持在 Unix, Windows 下使用. ...

  4. 浏览器开启桌面通知Web Notification

    本文主要描述如何开启各个浏览器的桌面通知功能 一.谷歌浏览器(chrome) 点击地址栏前面的图标

  5. 带你玩转Visual Studio——带你了解VC++各种类型的工程

    原文地址:http://blog.csdn.net/luoweifu/article/details/48816605 上一篇文章带你玩转Visual Studio——带你新建一个工程一文中提到新建一 ...

  6. 022_applescript快速入门教程

    基础语法 一.这部分介绍注释,发出声音,弹窗 (1)简单入门 <1>多行注释 (* this is multi comment *) <2>发出响声 beep 3 (2) #表 ...

  7. 027_磁盘维护命令du等

    一.du查看磁盘空间大小排除指定目录的的用法. 下面的例子为排除/data目录,因为/data目录是单独挂载的磁盘 [pe@jyall-3 /data]$ sudo du --exclude='/da ...

  8. 【算法】二分查找法&大O表示法

    二分查找 基本概念 二分查找是一种算法,其输入是一个有序的元素列表.如果要查找的元素包含在列表中,二分查找返回其位置:否则返回null. 使用二分查找时,每次都排除一半的数字 对于包含n个元素的列表, ...

  9. js -- sort() 使用排序函数

    JavaScript sort() 方法 JavaScript Array 对象 定义和用法 sort() 方法用于对数组的元素进行排序. 语法 arrayObject.sort(sortby) 参数 ...

  10. pipeline

    执行顺序:pipeline 写 pipeline类class Scrapyproject1Pipeline(object): def process_item(self, item, spider): ...