libjpeg库的交叉编译
libjpeg库主要用于jpeg格式图片的编解码,其交叉编译过程如下
1. 下载源码
从官方网站http://www.ijg.org/files/ 下载libjpeg库的源码,本次编译过程使用的是 jpegsrc.v9a.tar.gz
2. 解压源码
2.1 切换到下载目录,执行
tar -xzvf jpegsrc.v9a.tar.gz
2.2 切换到源码目录
cd jpeg-9a/
3. 交叉编译
3.1 设置交叉编译器的环境变量
export CC=/home/jarvischu/arm-linux-uclibcgnueabi-gcc
3.2 执行configure,其中–prefix 用来指定编译结果的存放位置; –host 用来指明交叉编译
./configure --prefix=/home/jarvischu/jpeg --enable-shared --enable-static --host=arm-unknown-linux
3.3 执行make命令
make
3.4 执行make install 命令
sudo make install
至此,交叉编译结束,编译结果存放在/home/jarvischu/jpeg目录下,该目录包含了编译得到的lib和include
使用libjpeg库实现jpeg图片的缩放(缩略图)
#include <stdio.h>
#include "jpeglib.h"
#include <setjmp.h>
struct my_error_mgr {
struct jpeg_error_mgr pub; /* "public" fields */
jmp_buf setjmp_buffer; /* for return to caller */
};