基于s5pv210嵌入式linux系统sqlite3数据库移植

1、下载源码

http://www.sqlite.org/download.html

最新源码为3080100

clip_image002

2、解压

tar xvf XXXXX

clip_image004

3、配置编译环境

运行

./configure –host=你的交叉编译工具的前缀 –prefix=你想编译安装的位置

我的host为arm-none-linux-gnueabi,prefix为/home/linux/sqlit3-arm

运行后会生成Makefile文件。

4、编译并安装

编译:make

安装:make install

安装完成后会在你设定的目录下生成安装好的文件:

clip_image006

bin、include、lib、share

bin:为编译完成的sqlite3可执行文件

include:开发数据库程序时需要引用的头文件

lib:开发数据库程序需要引用的库文件,当然sqlite3可执行文件运行也得需要

share:说明文件

5、移植

将bin下的sqlite3可执行文件拷入你自己制作的busybox文件系统相应的目录;

将include下的所有文件拷入制作的busybox文件系统下的/usr/include文件夹下,如果没有该目录自己建立并拷入;

将lib文件夹下的所有文件拷入busybox文件系统的/lib目录下,

clip_image008

从上面可以看出两个软链接文件都是生成自本目录,所以无需再重新生成,这点与sqlite3.7版本有些不同,除了上面的3个库文件,其他.a、.la和目录是可以删除的,这样可以缩小文件体积。当然你也可以使用strip工具进一步缩小文件的体积,再次就不赘述了。

share目录可以不管。

现在挂载自己的文件系统,运行一下试试看吧!是不是很成功了?

如果发生运行时的问题,可以检查自己编译文件系统的交叉工具和编译sqlite3的交叉工具版本是不是匹配,sqlite3在文件系统中依赖的库是不是和交叉编译sqlite3文件的库版本一致,这个问题不注意的话会引起很多小问题。切记!!