嵌入式常用库

ARM-LINUX下一些常用库的移植

2010-04-28 10:51:47|  分类: arm-linux|举报|字号 订阅

一些库在各个项目经常重用.如jpeg,freetype,iconv 等.每次大型项目均会反复重用.因此按照原来项目规范,一般都放在项目libs目录下,但后来发现,每个项目都做重复操作.也完全没有必要.因为现在是将其归纲到一个comm_lib公用信息.

以下是常用库的ARM-Linux移植,我是放在/home/hxy/common_lib 目录下.按到移植规范,输出在 output/arm-linux下,库本身在 libs 下面.

以下是常见库的移植.在这里留作教学和备份用.

通用类

1.zlib库移植

  • 下载
  • 解压 tar xvzf zlib-1.2.3.tar.gz
  • cd zlib-1.2.3
  • 生成Makefile(注意zlib只能静态,动态分开编译,因此要生成两次Makefile和两次编译和安装)
    • 生成静态库 CC=arm-linux-gcc CPP="arm-linux-gcc -E" AR="arm-linux-ar rc" RANLIB=arm-linux-ranlib ./configure --prefix=$PWD/../../output/arm-linux
    • 生成动态库 CC=arm-linux-gcc CPP="arm-linux-gcc -E" AR="arm-linux-ar rc" RANLIB=arm-linux-ranlib ./configure --shared  --prefix=$PWD/../../output/arm-linux
  • 编译 make
  • 安装 make install

图像类

1.jpeg库,用于jpeg图像处理

  • ftp://ftp.nz.debian.org/gentoo/distfiles/jpegsrc.v6b.tar.gz
  • 解压 tar xvzf jpegsrc.v6b.tar.gz
  • cd jpeg-6b
  • 生成Makefile
    • ./configure --enable-shared  --enable-static --host=arm-linux --prefix=$PWD/../../output/arm-linux
  • 编译 make
  • 安装 make install
    • 注意这个库的安装程序有BUG,不会自动创建发布的lib,include,man等,因此要手工创建,要不先把其它库做好,再安装这个库
    • mkdir -p /home/hxy/common_lib/output/arm-linux/include
    • mkdir -p /home/hxy/common_lib/output/arm-linux/lib
    • mkdir -p /home/hxy/common_lib/output/arm-linux/man/man1

2.png 用于PNG图像显示

3.tiff库 ,(tiff格式显示)

音频类

2.mad

  • 官网 http://www.underbit.com/products/mad/
  • 解压 tar xvzf libmad-0.15.1b.tar.gz
  • cd libmad-0.15.1b
  • 生成Makefile(标准)
    • ./configure  --host=arm-linux --enable-shared  --enable-static --prefix=$PWD/../../output/arm-linux
  • 去掉Makefile中-fforce-mem
    • 因为arm-linux-gcc不认识这个选项,编译提示 error: unrecognized command line option "-fforce-mem"
  • 编译make
  • 安装 make install

3.id3tag:读取mp3信息

官网 http://www.underbit.com/products/mad/

  • 解压 tar xvzf libid3tag-0.15.1b.tar.gz
  • cd libid3tag-0.15.1b
  • 生成Makefile(标准)
    • ./configure  --host=arm-linux --enable-shared  --enable-static --prefix=$PWD/../../output/arm-linux
    • 编译 make
    • 安装 make install

    4.ogg  一种音频解码格式

    • 解压 tar xvzf libogg-1.1.4.tar.gz
    • cd libogg-1.1.4
    • 生成Makefile (标准)
      • ./configure  --host=arm-linux --enable-shared  --enable-static --prefix=$PWD/../../output/arm-linux
    • 编译make
    • 安装 make install

    文字编码类

    1.iconv库 用于文字编码转换

    • 主页 :http://www.gnu.org/software/libiconv
    • 下载:http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.13.1.tar.gz
    • 解压 tar xvzf libiconv-1.13.1.tar.gz
    • cd libiconv-1.13.1
    • 生成Makefile (标准)
      • ./configure  --host=arm-linux --enable-shared  --enable-static --prefix=$PWD/../../output/arm-linux
    • 编译make
    • 安装 make install

    2. freetype:开源高质理字体显示函数库

    • 主页:http://www.freetype.org/
    • 下载:http://ftp.twaren.net/Unix/NonGNU/freetype/freetype-2.3.11.tar.gz
    • 解压 tar xvzf freetype-2.3.11.tar.gz
    • cd freetype-2.3.11
    • 生成Makefile (标准)
      • ./configure  --host=arm-linux --enable-shared  --enable-static --prefix=$PWD/../../output/arm-linux
    • 编译make
    • 安装 make install

    3.

时间: 2024-10-13 05:39:36

嵌入式常用库的相关文章

<2014 04 29> *nix环境编程常用库总结

-------------------------linux常用头文件如下:POSIX标准定义的头文件<dirent.h>        目录项<fcntl.h>         文件控制<fnmatch.h>    文件名匹配类型<glob.h>    路径名模式匹配类型<grp.h>        组文件<netdb.h>    网络数据库操作<pwd.h>        口令文件<regex.h>   

Python的常用库

读者您好.今天我将介绍20个属于我常用工具的Python库,我相信你看完之后也会觉得离不开它们.他们是: Requests.Kenneth Reitz写的最富盛名的http库.每个Python程序员都应该有它. Scrapy.如果你从事爬虫相关的工作,那么这个库也是必不可少的.用过它之后你就不会再想用别的同类库了. wxPython.Python的一个GUI(图形用户界面)工具.我主要用它替代tkinter.你一定会爱上它的. Pillow.它是PIL(Python图形库)的一个友好分支.对于用

python 常用库收集

读者您好.今天我将介绍20个属于我常用工具的Python库,我相信你看完之后也会觉得离不开它们.他们是: Requests.Kenneth Reitz写的最富盛名的http库.每个Python程序员都应该有它. Scrapy.如果你从事爬虫相关的工作,那么这个库也是必不可少的.用过它之后你就不会再想用别的同类库了. wxPython.Python的一个GUI(图形用户界面)工具.我主要用它替代tkinter.你一定会爱上它的. Pillow.它是PIL(Python图形库)的一个友好分支.对于用

c++常用库

c++常用库 C++ 资源大全关于 C++ 框架.库和资源的一些汇总列表,内容包括:标准库.Web应用框架.人工智能.数据库.图片处理.机器学习.日志.代码分析等. 标准库C++标准库,包括了STL容器,算法和函数等. C++ Standard Library:是一系列类和函数的集合,使用核心语言编写,也是C++ISO自身标准的一部分.Standard Template Library:标准模板库C POSIX library : POSIX系统的C标准库规范ISO C++ Standards

orcad常用库文件

ORCAD CAPTURE元件库介绍 AMPLIFIER.OLB amplifier 共182个零件,存放模拟放大器IC,如CA3280,TL027C,EL4093等. ARITHMETIC.OLB arithmetic 共182个零件,存放逻辑运算IC,如TC4032B,74LS85等. ATOD.OLB 共618个零件,存放A/D转换IC,如ADC0804,TC7109等. BUS DRIVERTRANSCEIVER.OLB 共632个零件,存放汇流排驱动IC,如74LS244,74LS37

一些Python常用库的整理收藏

一些Python常用库的整理收藏 转载自:https://zhuanlan.zhihu.com/p/21563130 另外 https://awesome-python.com/#data-analysis 网站上也分类好了很多常用的库. GUI 图形界面 Tkinter : Tkinter wxPython: wxPython PyGTK: PyGTK PyQt: PyQt PySide: PySide Web框架 django: django web2py:web2py flask: fla

libmysqld,嵌入式MySQLserver库

25.1.1. 嵌入式MySQLserver库概述 使用嵌入式MySQLserver库,可以在client应用程序中使用具备所有特性的MySQLserver. 主要长处在于.添加了速度.并使得嵌入式应用程序的管理更简单. 嵌入式server库是以MySQL的client/server版本号为基础的,採用C/C++语言编写. 其结果是嵌入式server也是用C/C++语言编写的. 在其它语言中,嵌入式server不可用. API与嵌入式MySQL版本号和client/server版本号等效. 要想

&lt;2014 04 29&gt; c/c++常用库总结

C 标准库 ============================================================================================== C++ 标准库 STL 标准库中提供了C++程序的基本设施.虽然C++标准库随着C++标准折腾了许多年,直到标准的出台才正式定型,但是在标准库的实现上却很令人欣慰得看到多种实现,并且已被实践证明为有工业级别强度的佳作. 1. Dinkumware C++ Library 参考站点:http://w

优雅的项目配置--常用库和版本管理

欢迎Follow我的GitHub, 关注我的CSDN. 最近经常有人问我, 如何管理gradle版本, 我来统一讲解这些小技巧. 随着Android开发的成熟, 模块越来越多, 为了开发稳定的程序, 引入的库也随之增加, 如何确保所有项目使用相同的编译版本he库版本呢? 当然, Gradle的参数配置可以帮我们实现这些. 主要 (1) 常用库的展示与配置. (2) 统一管理项目和库的版本. (3) 设置项目的私有参数. 1. 常用库 编程三剑客, RxJava+Retrofit+Dagger.