SQL数据库移植到ARM板步骤
SQL作为一种存储数据的数据结构,具有体积小(能堵存储的数据多),容易移植等优点。例如,在Ubuntu或者ARM开发板上被大量应用。下面就简单说一下SQL移植到ARM板的步骤。
下载源代码 (记得在家目录操作,共享目录有时候操作失败)
SQL数据库官方网站:
http://www.sqlite.org/
sqlite-autoconf-3240000.tar.gz
解压:
tar -xzvf sqlite-autoconf-3240000.tar.gz
2.进行配置
cd sqlite-autoconf-3240000/ (进入解压后的文件夹)
./configure --host=arm-linux --prefix=/home/gec/arm_sql
(–host是编译工具 ,–prefix 是库文件指定生成路径)
3.编译
(配置后生成makefile文件)
make
4.安装
make install
---------------------------移植到开发板-----------------
1.打包arm_sql 文件夹
tar -czvf arm_sql.tar.bz arm_sql/ (压缩库文件)
2.把压缩包下载到开发板中
arm_sql.tar.bz
scp arm_sql.tar.bz root@192.168.8.8😕 (通过SSH协议)
3.解压压缩包
tar -xzvf arm_sql.tar.bz
4.配置库文件
mv ./arm_sql/lib/* /lib/ (把lib下的所有文件移动到ARM板的根目录的lib下)
5.配置工具路径
mv ./arm_sql/bin/* /bin/ (把bin下的所有文件移动到ARM板的根目录的bin下)
(sqlite3 命令可能需要修改权限) chmod 777 sqlite3
6.测试sqlite3 工具是否可用
数据库的使用编译方面需要注意的错误:
编译时出现如下错误: 因为arm-linux-gcc 工具链是没有数据库的。
gec@ubuntu:sql_c_select$ arm-linux-gcc open_sql.c -o open_sql
open_sql.c:2:57: fatal error: sqlite3.h: No such file or directory
compilation terminated.
1
2
3
//没有制定库路径
/tmp/cck8woBe.o: In function `main':
open_sql.c:(.text+0x194): undefined reference to `sqlite3_open'
1
2
( 需要链接动态库 -lsqlite3)
需要制定所使用的数据库:
arm-linux-gcc open_sql.c -o open_sql -I/home/gec/arm_sql/include
1
arm-linux-gcc open_sql.c -o open_sql_arm
-I/home/gec/arm_sql/include //-I 头文件路径名
-L/home/gec/arm_sql/lib //-L 库文件路径名
-lsqlite3 //-l 链接第三方库的名称
---------------------