SQLite数据库在arm-linux下的移植
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是我的用户名 通过telnet登录到目标板,注意这里必须是以root权限登录的,然后 mkdir /mnt/nfs chmod /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 打印 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |