微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > ARM技术讨论 > SQLite3在ARM Cortex-A9开发板上的移植

SQLite3在ARM Cortex-A9开发板上的移植

时间:10-02 整理:3721RD 点击:

1、解压sqlite3源码

  # tar xvf sqlite-autoconf-3081002.tar.gz

  2、进到源码目录并定制Makefile

  # cd sqlite-autoconf-3081002

  #./configure                    --prefix=$PWD/build                     --host=arm-linux
      CC=/opt/arm-linux-gcc-4.6.4/bin/arm-linux-gcc

  OR

  # ./configure --prefix=$PWD/build --host=i386-linux

  说明

  --prefix: 指定安装路径

  --host:指定主机编译环境

  arm-linux是指ARM交叉编译

  i386-linux是指x86系统

  CC:指定编译器

  如果--host是arm-linux则需要交叉编译工具链

  如果--host是i386-linux则不需要指定编译器,而使用系统默认的gcc

  例:移植到ARM Cortex-A9

  #./configure                    --prefix=$PWD/build                      --host=arm-none-linux-gnueabi
       CC=/home/farsight/gcc-4.6.4/bin/arm-none-linux-gnueabi-gcc

  注: arm-none-linux-gnueabi ------ 为A9开发板的交叉编译工具

  /home/farsight/gcc-4.6.4/bin/arm-none-linux-gnueabi-gcc ------为交叉编译工具路径

  3、编译

  # make

  4、安装

  # make install

  5、移植到A9板子上:

  找到交叉工具链的目录

  ~#which arm-none-linux-gnueabi-gcc

  得到: /home/farsight/gcc-4.6.4/bin/arm-none-linux-gnueabi-gcc

  拷贝头文件:

  进入sqlite3的头文件目录:a

  #cd /sqlite-autoconf-3081002/build/include

  把所有头文件拷贝到交叉编译工具的头文件目录下:

  #cp -a ./* /home/farsight/gcc-4.6.4/arm-arm1176jzfssf-linux-gnueabi/sysroot/usr/include/ ---->此路径的头文件是虚拟机CROSS_COMPILE的,为以后编译对应的视频应用程序做好准备工作。

  拷贝动态库

  进入sqlite3的库文件目录:

  #cd sqlite-autoconf-3081002/build/lib

  把所有库文件拷贝到交叉编译工具的库文件目录下:

  #cp -a ./* /home/farsight/gcc-4.6.4/arm-arm1176jzfssf-linux-gnueabi/lib

  拷贝库到板子上

  # cp -a sqlite-autoconf-3081002/build/lib/* /source/rootfs/lib/

  编译时加上-lsqlite3:

  #arm-none-linux-gnueabi-gcc *.c -o app -lsqlite3


这样就移植过去了?

是呀 你有学过相关的知识吗?还是在自己自学呀

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top