您的位置:首页 > 运维架构 > Linux

SQLite数据库在arm-linux下的移植

2010-06-05 19:49 239 查看
SQLite数据库在arm-linux下的移植
一:linux下面的用到的基本命令:
1.1 在超级终端可以控制开发板,但是一个开发板只能被一个人控制,我们可以利用telnet服务通过网络将板子挂在路由器上,这样在局域网内的电脑都可以登陆到开发板,进而控制开发板。
上星期的总结上有个问题,那就是对于开发板上面的有些程序不能执行,这个星期调通,是因为权限的问题。实际上在板子上是有root账户的。下面是详细的过程
打开XP的 cmd或者Ubuntu的终端,输入
telnet 192.168.1.230 ///后面的IP是目标板的IP,在登陆之前,可以先ping下目标板,看能不能到达。
输入 root
然后按确定,这样就那个root进入到了开发板,开发板的bin文件夹是系统的命令,sbin放的是用户的应用程序。板子上是裁剪了的,所以有些命令是不能在板子上运行的,事先可以查看下bin文件夹下面是否有这个程序。

1.2 通过NFS建立同步文件夹。
通过NFS服务器建立同步文件的好处是很大的。这样可以不用将程序下到板子上,直到全部调试好之后在下载下去。建立同步之后,我们用的是目标板的CPU,执行的是主机上面的程序。下面是具体的建立过程。只对Ubuntu
1.2.1首先检查是否已经安装了必须的软件包:
使用命令:
dpkg –l portmap
dpkg –l nfs-kernel-server
要是返回没有安装,安装nfs服务器端和客户端
服务器端:sudo apt-get install portmap nfs-kernel-server
客户机端:sudo apt-get install portmap nfs-common
1.2.2.配置共享文件
编辑/etc/exports,在其中增加要共享的目录
vi /etc/exports
用su命令进入root账户,不用以后一直输入sudo
配置
/nfs_share *(rw,sync,no_root_squash)
/nfs_share是要共享的目录,*网段内的NFS客户端能够共享NFS服务器/nfs_share目录内容.且有读,写权限, 并且该用户进入/nfs_share目录后的身份为root,比如我的就是/home/ftp,这个文件以后挂在的时候经常要用到。
1.2.3重启服务
sudo /etc/init.d/portmap restart
sudo /etc/init.d/nfs-kernel-server restart
可能各个init.d放置的位置不同,要是没能正常启动,百度能找到解决办法,很简单。
1.2.4服务器安装完之后可以这样测试。
$showmount –e
如果看到这样的信息就说明成功了。
root@xiaoyang:~# showmount –e
export list for xiaoyang:
/home/ftp (everone)
xiaoyang是我的用户名
1.2.5.在客户机端创建用于挂载的目录。
通过telnet登录到目标板,注意这里必须是以root权限登录的,然后
mkdir /mnt/nfs
chmod /mnt/nfs
1.2.6客户就可以加载了
mount 192.168.1.102:/home/ftp /mnt/nfs

二:SQLite数据库在arm-linux下的移植,环境是在Ubuntu9.04。
2.1 SQLite数据库的简介
SQLite是一款轻型的数据库,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如Tcl、PHP、Java等,还有ODBC接口,同样比起Mysql、PostgreSQL这两款开源世界著名的数据库管理系统来讲,它的处理速度比他们都快。
下面是访问SQLite官方网站: http://www.sqlite.org/ 时第一眼看到关于SQLite的特性.
1. ACID事务
2. 零配置 – 无需安装和管理配置
3. 储存在单一磁盘文件中的一个完整的数据库
4. 数据库文件可以在不同字节顺序的机器间自由的共享
5. 支持数据库大小至2TB
6. 足够小, 大致3万行C代码, 250K
7. 比一些流行的数据库在大部分普通数据库操作要快
8. 简单, 轻松的API
9. 包含TCL绑定, 同时通过Wrapper支持其他语言的绑定
10. 良好注释的源代码, 并且有着90%以上的测试覆盖率
11. 独立: 没有额外依赖
12. Source完全的Open, 你可以用于任何用途, 包括出售它
13. 支持多种开发语言,C, PHP, Perl, Java, ASP.NET,Python

2.2 下载最新的SQLite数据库源码
要将SQLite数据库移植到ARM-LINUX上面,首先就是在官方网站上下载最新的linux版本的源代码。下载地址是:http://www.sqlite.org/download.html
我在这个网站上下了一个windows的版本的玩了下,然后下了一个linux的。具体是sqlite-3.6.23.1.tar.gz
下载之后可以将其放在任何的一个文件夹下面,我是将它放在/usr/local/arm/下面。解压之后。修改相关的配置信息。在配置文件中写入:
../configure --host=arm-linux --prefix=/root/sqlite-3.6.23/build/target
因为下载下来的MAKEFILE都已经做好,所以直接编译之后 安装便可。
make
make install
2.3 下载到开发板,测试
编译和安装完后,在/usr/local/arm/sqlite目录中会生成三个目标文件夹,分别是:bin、 include、lib,然后分别将bin下的文件下载到开发板的/usr/bin目录中,lib下的所有文件下载到开发板的/usr/lib目录中即可。这里可以用NFS传到板子上。
在板子上的/usr/bin 中会有 sqlite3。
./sqlite3
打印
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: