《嵌入式系统与开发》构建嵌入式LINUX系统 实验报告(1)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
检查当前文件夹下___A__(A.存在 B.不存在)Makefile 文件。
第三步,编译 sqlite,命令为_make_,编译过程中使用的编译器为_ arm-linux-gcc _。
第四步,安装 sqlit,命令为_make install_。安装完成后到_/opt/sqlite_文件夹下去查看相关文件, 可以看到该文件夹下有_bin_、_include_、__lib__和 share 文件夹,其中可执行文件 sqlite3 位于_./bin_ 文件夹,库位于_./lib_文件夹。
南京邮电大学计算机学院《嵌入式系统与开发》实验报告
} strSq1="select * from where=10086"; nResult=sqlite3_exec(db,strSq1.c_str(),callback,NULL,NULL,&errmsg); if (nResult !=SQLITE_OK) {
sqlite3_close(db); cout<<errmsg<<end1; sqlite3_free(errmsg); return 0; }
sqlite3_close(db); return 0; }
int callback(void* ,int nCount,char** pValue,char** pName) {
sqlite3* db; int nResult=sqlite3_open("test.db",&db); if (nResult !=SQLITE_OK) {
printf("打开数据库失败\n"); return 0; } else { printf("打开数据库成功\n"); } char* errmsg; nResult=sqlite3_exec(db,"creat table stutable(id int(20),name(20),phoneNum(20))",NULL,NULL,&errmsg); if (nResult !=SQLITE_OK) { sqlite3_close(db); cout<<errmsg; sqlite3_free(errmsg); return 0; } string strSq1; strSq1+="begin;\n"; for (int i=0;i<100;i++) { strSq1+="insert into stu values(null.'heh');\n"; } strSq1+="commit;"; //cout<<strSq1<<end1; nResult=sqlite3_exec(db,strSq1.c_str(),NULL,NULL,&errmsg); if (nResult !=SQLITE_OK) { sqlite3_close(db); cout<<errmsg<<end1; sqlite3_free(errmsg); return 0;
夹下,可以看到源码文件有 shell.c 和 sqlite3.c 文件,生成 Makefile 的配置脚本文件 configure.ac , 并检查当前文件夹下__A__(A.存在 B.不存在)Makefile 文件。
第 二 步 利 用 configure 脚 本 文 件 生 成 基 于 ARM 实 验 台 的 Makefile , 具 体 命 令 为./configure CC=arm-linux-gcc –prefix=/opt/sqlite –host=arm-linux(假设安装目录为/opt/sqlite),并
001,zhangsan,10086 002,lisi,10000 具体命令为_sqlie> insert into stutable values (001,’zhangsan’,10086); _;
_sqlite> insert into stutable values (02,’lisi’,10000);_;
Linux 使用、数据库相关知识等
四.实验设备及工具(包括软件调试工具)
硬件:ARM 嵌入式开发平台、PC 机 Pentium100 以上、串口线。 软件: WinXP 或 UBUNTU 开发环境。
五.实验步骤
5.1 移植嵌入式数据库 sqlite 步骤【参看教材 103 页】: 第一步,解压缩 sqlite 源码,命令 tar zxvf sqlite-autoconf-3080900.tar.gz,在解压后的文件
string s; for(int i=0;i<nCount;i++) {
s+=pName[i]; s+=":"; s+=pValue[i]; s+="\n"; } printf("%s\n",s); return 0; }
假设上述代码文件名为 sqlite_exp.c 文件,编译命令 arm-linux-gcc -o test sqlite_exp.c -I /opt/build/ include/ -L /opt/build/lib/ -lsqlite3 _,其中头文件位于/opt/sqlite/include,库位于/opt/sqlite/lib 下。
南京邮电大学计算机学院《嵌入式系统与开发》实验报告
查询电话号码为 10086 的相关记录信息,命令为_sqlite> select * from stutable where=10086;__。
方式 2:编程操纵数据库 使用 C 编程模式完成上述功能,代码如下:
#include<stdio.h> #include"sqlite/sqlite3.h" int callback(void*,int,char**,char**); int main() {
第五步,将 sqlite3 拷贝到开发板 bin 目录下,将库下的文件拷贝到开发板的 lib 目录下【注意链 接文件的创建】
第六步,数据库的使用 方式 1:命令操纵数据库 在超级终端环境下创建数据库 stucomm.db,命令为_sqlite3 stucomm.db_; 创建数据表 stutable,字段包括 id 整型,name 字符型,phoneNum 字符型,具体命令为_sqlite> create table stutable (id int(20),name char(20),phoneNum char(20));_; 插入 2 条记录,记录信息如下
一.实验目的
理解嵌入式软件移植的基本方法,掌握 sqlite 数据库软件移植的步骤,掌握 sqlite 开发的两种方式—命令模式和 C 代码开发模式的使用方法,并编程实现简单通讯录查询 实验。
二.实验内容
实验 3.1 移植嵌入式数据库 sqlite 实验 3.2 简单通讯录查询实例设计和测试
三.预备知识
南京邮电大学计算机学院《嵌入式系统与开发》实验报告
《嵌入式数据库 sqlite 移植及 使用》
实验报告
学生姓名: 学 号: 专业班级: 指导教师: 完成时间:
陈彤 13004405
130044 孙国梓 2016.5.31
南京邮电大学计算机学院《嵌入式系统与开发》实验报告
实验 3 ቤተ መጻሕፍቲ ባይዱ入式数据库 sqlite 移植及使用
相关文档
最新文档