libjpeg库的编译和使用

Libjpeg is a widely used C library for reading and writing JPEG image files. It was developed by Tom Lane and the Independent JPEG Group (IJG) during the 1990's and it is now maintained by several developers using various services identified in the SourceForge summary.

Libjpeg是一款常用的jpeg图像压缩和解压的函数库,安装libjpeg可以直接使用apt-get等命令也可以下载libjpeg源码编译安装,这里介绍一下通过源码在主机和无编译器的嵌入式系统上安装libjpeg的方法。

较新版本的libjpeg版本是9.0.0,以9.0.0版本的源码为例,源码获取可以在网上搜索,解压之后在源码中会有一个BUILDING.md文件,这个文件是进行编译的条件和步骤介绍。编译条件为:

autoconf 2.56 or later、

automake 1.7 or later、

libtool 1.4 or later、

NASM or YASM (if building x86 or x86-64 SIMD extensions)、

GCC v4.1 (or later) or Clang recommended for best performance

等,尽量使用最新版本的软件。编译步骤:

1、进入源码目录执行 autoreconf -fiv

2、进入目标文件存放目录(可以还是源码目录,这样生成的文件还在源码目录下),执行configure配置文件

sh {source_directory}/configure [additional configure flags]

source_directory就是源码路径,additional configure flags是附加配置选项,如果是编译成本机使用的库文件可以不加配置选项,如果是给嵌入式系统编译库文件这additional configure flags需要设置:

./configure CC=arm-linux-gcc LD=arm-linux-ld --host=arm-linux --enable-shared --enable-static

CC是指定交叉编译器的路径,LD是指定交叉链接器的路径,host是指宿主系统类型,这里是arm-linux,后面enable shared和enable static是指是否生成动态链接库和静态链接库。上面的命令是目标平台为arm的交叉编译命令,mips平台的交叉编译命令为:

sh configure CC=/home/tq/buildroot-gcc342/bin/mipsel-linux-uclibc-gcc LD=/home/tq/buildroot-gcc342/bin/mipsel-linux-uclibc-ld --host=mips-linux --enable-shared --enable-static

其中交叉编译器位置为/home/tq/buildroot-gcc342。

3、执行make命令进行编译,编译完成之后生成的文件在building dir下面的“.libs”文件夹中。将下面三个文件

libjpeg.so
libjpeg.so.9
libjpeg.so.9.0.0

拷贝到/usr/lib/文件夹中去就能使用了。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值