概述:简单说一下libjpeg-turbo和libjpeg的区别,这是在维基百科上看的。libjpeg-turbo是libjpeg的一个复刻,它采用单指令流多数据流(SIMD)指令来加速JPEG编码和解码基础效率。许多项目现在使用libjpeg-turbo而不是libjpeg。我也是看了这个,又看到很多人推荐libjpeg-turbo,所以自己也就装了一个。那么现在就看看如何安装吧。(由于版本问题,我之前安装的是1.5.2版本,而现在已经1.5.9版本了,且编译安装方式也发生了改变,之前是configure文件编译安装,现在1.5.9版本已经是cmake的方式去编译安装了。现重新编辑(会保留原来方式老版本的安装,也会添加新版本的安装方式),感谢niaoweiyi88提出问题—修改于2018.07.17)
1,下载libjpeg-turbo源码。
$ 进入下载官网页面,网址https://sourceforge.net/projects/libjpeg-turbo/files/
界面如下,可选择需要版本进行下载,1.5.9版本编译安装方式就已经改变了:
找到响应下载版本,点进去后下载对应的tar.gz的打包文件,如下载1.5.2版本如下所示:
下载文件后解压源码文件,开始编译安装。下面操作默认源码文件夹名为libjpeg-turbo.
2,安装编译依赖包。
$ sudo apt-get install nasm
注意:以下步骤为1.5.2,1.5.3等版本的安装方式。
3,编译安装。
在源码中,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
OK,大功告成。至于这个库怎么使用,一些API使用,我后续用了,再把demo贴出来了。Peace&Love.
注意:以下步骤为1.5.9版本的安装方式。
3,编译安装。
在源码中,BUILDING.md文件中,有告诉我们如何编译。所以在安装的时候还是仔细去看官方给的文件,截图如下:
第一步,移动到源文件目录,创建build目录并移动到build目录。
$ cd libjpeg-turbo
$ mkdir build
$ cd build
第二步,删除/usr/local/lib下libjpeg.so*文件,cmake生成makefile文件
不过在运行之前,我们查看一下/usr/local/lib下有没有libjpeg.so*文件,有的话我们执行操作,删除这些文件。
sudo rm -rf /usr/local/lib/libjpeg.so*
否则,直接执行此步即可。
$ cmake .. -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX:PATH=/usr/local -DCMAKE_INSTALL_MANDIR:PATH=/usr/local/share/man -DCMAKE_INSTALL_DOCDIR:PATH=/usr/local/share/doc/libjpeg-turbo-1.5.9 -DWITH_JPEG8=1
解释一下各项参数简单意思。
-G “Unix Makefiles” 生成unix类型系统的makefile文件。
-DCMAKE_INSTALL_PREFIX:PATH=/usr/local 指定库安装路径,否则默认为/opt/libjpeg-turbo。
-DCMAKE_INSTALL_MANDIR:PATH=/usr/local/share/man 指定man文件(相关命令参考信息)安装路径。
-DWITH_JPEG8=1 这个开关启用与libjpeg 8版本API兼容。
-DCMAKE_INSTALL_DOCDIR:PATH=/usr/local/share/doc/libjpeg-turbo-1.5.9 指定文档安装路径。
第三步,编译及安装。
$ make
$ sudo make install
贴一下make编译后的文件夹中build目录下文件内容,如图:
第四步,小测试。
在build目录下执行make test命令。
$ make test
OK,到这里1.5.9版本的安装就完成了。