libjpeg编译使用详解

本文详细介绍了如何在嵌入式设备上编译和使用libjpeg库,通过示例代码展示了从读取JPEG图像到显示到LCD屏幕的过程。文章重点在于libjpeg库的解压缩步骤及其在实际应用中的配置与调用。
摘要由CSDN通过智能技术生成

分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow

也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!

                一、交叉编译libjpeg
# tar -xzvf libjpeg-turbo-1.2.1.tar.gz 

#cd libjpeg-turbo-1.2.1

#mkdir tmp

# ./configure --prefix=$PWD/tmp --host=arm-linux
#make
#make install                /* 会安装在当前目录下面tmp目录里面 */ 

二、交叉编译jpg2rgb.c
方法一:编译器后面直接跟上头文件,库文件。路径是我们开始编译出来的路径。
arm-linux-gcc -o jpg2rgb jpg2rgb.c -I /home/book/workspace/project/libjpeg-turbo-1.2.1/tmp/include  -L /home/book/workspace/project/libjpeg-turbo-1.2.1/tmp/lib  -ljpeg
cp jpg2rgb /work/nfs_root/fs_mini_mdev_new
cp libjpeg-turbo-1.2.1/tmp/lib/*so* /work/nfs_root/fs_mini_mdev_new/lib/ -d


方法二:把库文件,头文件放在交叉编译里面库文件,头文件的路径下面。
把编译出来的头文件应该放入: /usr/local/arm/4.3.2/arm-none-linux-gnueabi/libc/usr/include

cd  /home/book/workspace/project/libjpeg-turbo-1.2.1/tmp/include

cp  *   /usr/local/arm/4.3.2/arm-none-linux-gnueabi/libc/usr/include

把编译出来的库文件应该放入:/usr/local/arm/4.3.2/arm-none-linux-gnueabi/libc/armv4t/lib

cd  /home/book/workspace/project/libjpeg-turbo-1.2.1/tmp/lib
cp *so*  -d   /usr/local/arm/4.3.2/arm-none-linux-gnueabi/libc/armv4t/lib

 cp *so* /work/nfs_root/      /* 把库文件复制到开发板lib目录下,我们用的是动态库所以需要拷贝 */


arm-linux-gcc -o jpg2rgb jpg2rgb.c -ljpeg      /* 要指定jpeg库,数学库则指定m */


 jpg2rgb.c文件如下:

#include <stdio.h>
#include "jpeglib.h"
#include <setjmp.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <sys/ioctl.h>
#include <sys/mman.h>
#include <linux/fb.h>
#include <string.h>
#inclu

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值