SQLite3移植到ARM Linux教程
2015-04-08 17:28
274 查看
来自:http://www.veryarm.com/440.html
SQLite 是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用,SQLite它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。
sqlite
SQLite 能够支持Windows、Linux、Unix、Android等主流的操作系统,同时能够跟很多程序语言相结合,如C、C++、 Tcl、C#、PHP、Java等,还有ODBC接口,同样比起MySQL、PostgreSQL这两款开源世界著名的数据库管理系统来讲,它的处理速度比他们都快。
SQLite3 地址:http://www.sqlite.org/download.html。 选择最新稳定版本的Source Code,如 sqlite-autoconf-3080600.tar.gz,就是SQLite
3.8.6版。
本文以SQLite 3.8.6为例,先把下载的源码复制到主机(以 Ubuntu 为例),再进行解压。
其中,
–host: 指定交叉编译工具,一般为arm-none-linux-gnueabi、arm-linux-gnueabihf、arm-linux等,具体要和目标板用的交叉编译工具对应。
–prefix: 指定安装目录,编译后的文件会全部放在安装目录中。注意:必须是绝对路径!
使用交叉编译工具 strip 去除 sqlite3 的调试信息。
压缩动态库 libsqlite3.so.0.8.6 文件。
通过sftp、nfs或者U盘等方式,将 sqlite3 复制到目标板 /usr/sbin 目录,将动态库文件 libsqlite3.so.0.8.6 复制到目标板 /usr/lib 目录,并对动态库做链接。
在开发板上执行 sqlite3 命令,看到如下信息说明 sqlite3 移植成功!
使用 .help 查看帮助,使用 .quit 退出 sqlite 命令。
SQLite 是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用,SQLite它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。
sqlite
SQLite 能够支持Windows、Linux、Unix、Android等主流的操作系统,同时能够跟很多程序语言相结合,如C、C++、 Tcl、C#、PHP、Java等,还有ODBC接口,同样比起MySQL、PostgreSQL这两款开源世界著名的数据库管理系统来讲,它的处理速度比他们都快。
1 下载 SQLite3源码
SQLite3 地址:http://www.sqlite.org/download.html。 选择最新稳定版本的Source Code,如 sqlite-autoconf-3080600.tar.gz,就是SQLite3.8.6版。
2 复制并解压源码包
本文以SQLite 3.8.6为例,先把下载的源码复制到主机(以 Ubuntu 为例),再进行解压。$ cd $ mkdir sqlite3 #在主机(如Ubuntu)创建工作目录 $ cd sqlite3 #进入工作目录中 $ cp /media/sda1/sqlite-autoconf-3080600.tar.gz ./ #复制SQLite源码到主机 $ tar zxvf sqlite-autoconf-3080600.tar.gz #解压 $ cd sqlite-autoconf-3080600 #进入解压后的目录
3、配置编译选项
$ mkdir ../install #创建安装目录 $ export PATH=$PATH:/usr/local/arm-2010q1/bin #交叉编译工具路径加入系统环境变量,必须! $ ./configure --host=arm-none-linux-gnueabi --prefix=/home/veryarm/sqlite3/install
其中,
–host: 指定交叉编译工具,一般为arm-none-linux-gnueabi、arm-linux-gnueabihf、arm-linux等,具体要和目标板用的交叉编译工具对应。
–prefix: 指定安装目录,编译后的文件会全部放在安装目录中。注意:必须是绝对路径!
4 编译
$ make $ make install
5 去除调试信息
使用交叉编译工具 strip 去除 sqlite3 的调试信息。$ cd ../install/bin $ arm-none-linux-gnueabi-strip sqlite3
压缩动态库 libsqlite3.so.0.8.6 文件。
$ cd ../lib $ arm-none-linux-gnueabi-strip libsqlite3.so.0.8.6
6 复制文件
通过sftp、nfs或者U盘等方式,将 sqlite3 复制到目标板 /usr/sbin 目录,将动态库文件 libsqlite3.so.0.8.6 复制到目标板 /usr/lib 目录,并对动态库做链接。$ cp sqlite3 /usr/sbin $ cp libsqlite3.so.0.8.6 /usr/lib $ cd /usr/lib $ ln -s libsqlite3.so.0.8.6 libsqlite3.so.0 $ ln -s libsqlite3.so.0.8.6 libsqlite3.so
7 运行测试sqlite3
在开发板上执行 sqlite3 命令,看到如下信息说明 sqlite3 移植成功!# sqlite3 SQLite version 3.8.5 2014-06-04 14:06:34 Enter ".help" for usage hints. Connected to a transient in-memory database. Use ".open FILENAME" to reopen on a persistent database. sqlite>
使用 .help 查看帮助,使用 .quit 退出 sqlite 命令。
相关文章推荐
- 移植sqlite 笔记
- SQlite在PC和ARM上的编译移植
- linux sqlite3 在海思3518平台上移植
- cocos2dx向android平台移植出现问题undefined reference to 'sqlite3_close' collect2: ld returned 1 exit status
- loongson 1B 开发板移植sqlite3.6.20
- Qt4.5.1触摸屏(tslib 1.4)+sqlite3 移植全记录
- Sqlite3.8.4.1 arm-linux移植
- qt移植过程中出现QSQLITE driver not loaded 的解决办法
- 移植sqlite+apache+php
- SQLite移植手记1
- 嵌入式Linux之我行——嵌入式数据库sqlite在2440上的移植(转)
- SQLite在micro上的移植
- sqlite移植
- 将SQLite移植到ARM板上 (转)
- 成功移植SQLite3到ARM Linux开发板
- Qt4.5.1触摸屏(tslib 1.4)+sqlite3 移植全记录
- SQLite 移植
- 移植Sqlite到ARM板
- 在ARM-Linux平台上移植SQLite
- SQlite在PC和ARM上的编译移植