(实验六)
- 格式:pdf
- 大小:316.99 KB
- 文档页数:6
$sudo cp bin/ include/ lib/ share/ -r /root_path/opt/sqlite3 在开发板中添加环境变量/etc/profile 把/opt/sqlite3/bin 添加到环境变量中,或者直接把 bin 下边的 sqlite3 命令拷贝到根目录下 的/bin 中 把/opt/sqlite3/lib 添加到环境变量中,或者直接把下边的库文件拷贝到根目录下的/lib 中 编写代码测试,代码在下面程序清单中。 编译程序: $ arm-linux-gcc sqlite3.c -o sqlite_test -I ./include/ -L ./lib/ -lsqlite3 把 sqlite_test 传入开发板中执行如图所示:
指导教师评语:
《嵌入式系统案例分析与设计》 课程实验报告
班 级: 学 号: 姓 名: 指导老师: 成 绩:
实验六 典型嵌入式应用程序分析移植
实验学时:4
实验方法。
任务:交叉编译与移植一个典型的开源应用程序。
二、内容、要求与安排方式
1、实验内容与要求: 1)QT/E 2)WebServer 3).Sqlite 4)Samba Server。 以上程序选择其中之一进行分析与移植。
各种资料一步一步发现问题,解决问题。在实验过程中我发现,实验的方法和步 骤并不是一成不变的,本次实验我学会了用多种方法去解决问题,从而达到自己 的目的。
通过本次实验,我学会了很多书本上没有的知识,扩展了我的知识面,并且 学会了如何找出实验中的不足,继而去排除解决问题,这就是一个非常重要的过 程。当我通过实验去学习理论知识时,自己动手得出的结论,不仅能加深我对嵌 入式的理解,更能加深我对此的记忆。
六、实验体会 本次实验,我所做的移植是 Sqlite 移植,通过本次实验,我锻炼了移植 sqlite
的实际动手操作能力,理解了典型的嵌入式应用程序的开发方法,对于整个移植 操作有了更深入的学习和认知,对我我之后的更多的移植操作有很大的帮助,整 个实验过程是坎坷不断的,但是实验成功的那一刻确实无比开心的,在老师同学 的帮助下我完成了整个实验,实验过程中碰到了许许多多的问题,最后翻阅查找
五、程序清单 Sqlite3 分析与移植 #include <stdio.h> #include <sqlite3.h> #include <stdlib.h> static int callback(void *notused,int argc,char **argv,char **azColName) { int i; for(i = 0 ; i < argc ; i++ ) { printf("%s = %s\n",azColName[i],argv[i]); } printf("\n"); return 0; }
立、不需要服务器、不需要配置、支持 SQL 的、开源的文件数据库引擎。 SQLite3 下载
源代码下载地址:https:///download.html 可在此地址下载最新 版本的 SQLite3 源代码如下图所示:
Ubuntu 中安装 把源代码压缩包拷贝到自定义的目录中进行解压,源码包如图:
int main(int argc,char **argv) { sqlite3 *db; char *message = 0; int rc; if(argc!=3) { fprintf(stderr,"Usage:%s DATABASE SQL-STARTEMENT\n",argv[0]); } rc = sqlite3_open(argv[1],&db); if(rc) { fprintf(stderr,"Can't open database: %s\n",sqlite3_errmsg(db)); sqlite3_close(db); } rc = sqlite3_exec(db,argv[2],callback,0,&message); if(rc!=SQLITE_OK) { fprintf(stderr,"SQL error:%s\n",message); } sqlite3_close(db); return 0; }
2、实验安排方式:采用 1 人 1 组,上机在 Linux 系统与嵌入式开发板或试验箱上进行编程
实验。
三、实验设备
1、所用设备:PC 机一台与嵌入式开发板或试验箱。
四、实验过程 Sqlite3 分析与移植
SQLite 简介 SQLite 是一款轻型数据库,包含在一个相对较小的 C 库中。是一个完全独
进入压缩包目录进行解压:$tar -xvzf sqlite-autoconf-3240000.tar.gz,解压完成之后会在 本目录出现一个目录:sqlite-autoconf-3240000
进入目录:$cd sqlite-autoconf-3240000,执行命令:$./configure --prefix=/use/local,也 可直接执行:$./configure 再执行:$make,最后执行:$make install
进入目录:$cd sqlite-autoconf-3240000 生成 Makefile:$./configure --prefix=/use/local/sqlite --host=arm-linux 再执行:$make 最后执行:$make install 执行完成后会生成四个目录如下所示:
在开发板的根目录下的/opt 下创建一个 sqlite3 的目录 $mkdir sqlite3 将四个文件夹都复制到其中
在执行 make install 的时候有可能会出现权限不够问题,需要加上 sudo。等待安装完成。 SQLite3 测试
安装完成之后在终端中输入:$sqlite3
在当前目标下创建一个 student.db 数据库: $sqlite3 student.db sqlite>create table user(name,id); sqlite>insert into user values(‘zhangsan’,0001); sqlite>select * from user; zhangsan|1 sqlite> 安装成功 mini2440 中移植 SQLite3