使用libjpeg

来源:互联网 发布:国信期货软件 编辑:程序博客网 时间:2024/05/21 09:40
关于libjpeg,维基百科有一些介绍:
libjpeg 是一个完全用C语言编写的库,包含了被广泛使用的JPEG解码、JPEG编码和其他的JPEG功能的实现。这个库由独立JPEG工作组维护。

libjpeg-turbo是libjpeg的衍生品,性能较之libjpeg更强!


相关的产品还有Intel IPP(一套跨平台的软件函数库,他提供了广泛的多媒体功能:音频解码器、图像处理 、信号处理、语音压缩和加密机制)~


本次使用的是时下的最新的libjpeg-turbo-1.3.0。


交叉编译libjpeg-turbo-1.3.0

1.下载libjpeg-turbo-1.3.0.tar.gz文件

2.解压之
3.配置之
  可以通过./configure --help寻求帮助
  这里只设置安装地点和编译方式
  ./configure --prefix=$(pwd)/temp --host=arm-linux
 (在此之前得创建一个名为temp目录)
  --prefix指定安装地点
  --host指定编译环境
4.编译之

  make

5.安装之

  make install

6.然后把把生成的lib中的*.so*文件拷贝到根文件系统中

  cp xxxx/lib/*.so* xxxxx/root-xxx/lib/ -d (参数d确保链接文件还是那个链接文件)


然后在temp目录下查看到这么一些玩意儿:
root@book-desktop:/opt/pc_test/tarSource/libjpeg/libjpeg-turbo-1.3.0/temp# ls -l
总用量 20
drwxr-xr-x 2 root root 4096 2013-08-02 09:53 bin
drwxr-xr-x 2 root root 4096 2013-08-02 09:53 include
drwxr-xr-x 2 root root 4096 2013-08-02 09:53 lib
drwxr-xr-x 3 root root 4096 2013-08-02 09:53 man

drwxr-xr-x 3 root root 4096 2013-08-02 09:53 share


交叉编译过程很顺利,没出现什么错误~


然后开始拜读说明文档“libjpeg.txt”,文档写得非常详细,很容易理解,除此之外,还可以通过example.c学习如何使用此libjpeg库~


关于使用开源库,也算有一点点经验了吧!

1.开源库一般都是libxxx命名;

2.编译安装一般都有这么几个工作要做:

配置,指令常常是:./configure --xxoo1 --xxoo2,具体的可以通过./configure --help获取帮助信息,一般来说,需要指定--host(指定编译工具)以及--prefix(指定安装位置,最好手动设置,免得难找)

编译,make

安装,make install,常常会生成一些include、lib、bin文件夹

3.若要在ARM设备中使用,还常常要将动态库(*.so*文件)拷贝到开发板中,以保证应用程序有库可以调用;

4.如何学会使用一个“新鲜”的库?当然可以google,但更重要的是学会看说明文档(常常是txt文档),说明文档都是有目录索引的,对这些简单的英文要有耐性喽,除此之外,还有example程序(或者test程序),有了说明文档+example程序,一般都可以轻易搞定!




原创粉丝点击