一 、 开发环境:
Mini2440 , linux-2.6.38.2 内核,
Fedora , arm-linux-gcc-4.3.2
二、移植步骤
1. 解压数据库源文件并进入解压后的目录,如下:
tar -zxvf sqlite-3.7.22.tar.gz
cd sqlite-3.6.22
2. 创建一个目录 build 并进入该目录,用于在这个目录中进行交叉编译,如下:
mkdir build
cd build
3. 在 build 目录中运行 sqlite-3.6.22 中的 configure 脚本生成 Makefile 文件,如下:
../configure --host=arm-linux --prefix=/root/sqlite-3.6.22/build/target
选项 host 指定的是用 arm 交叉编译器进行编译
选项 prefix 后面的路径是到时候编译安装后目标存放的目录,你可以任意设置
4. 执行 make 和 make install 命令,如下:
make
如果出现arm-none-linux-gnueabi-gcc: 3.7.6.2": No such file or directory
<command-line>: warning: missing terminating " character
make: *** [sqlite3.lo] 错误 1
则修改makefile中的 -DPACKAGE_STRING=\"sqlite 3.7.6.2\" 把sqlite和3.7.6.2中间的空格去掉
make install
编译和安装完后,在 /root/sqlite-3.6.22/build/target 目录中会生成三个目标文件夹,分别是: bin 、 include 、 lib ,然后分别将 bin 下的文件下载到开发板的 /usr/bin 目录中, lib 下的所有文件下载到开发板的 /usr/lib和arm-linux-gcc的lib目录中即可。 include 目录下是 sqlite 的 C 语言 API 的头文件,编程时会用到, 复制到arm-linux-gcc的include目录下。
5. 在开发板上测试移植的 sqlite 数据库。登录开发板的 Linux ,执行:
sqlite3 demo.db