登陆
|
注册
|
搜索
|
最近新帖
发帖子
|
共享我的资料
|
精华帖子
|
热门话题
导航:
老古网
→
老古论坛
→
XMOS公共讨论区
→
XMOS开源项目区
→
单片机程序设计
→
嵌入式系统
→
广告区域
→
→发表看法:[sz20120406]SQLite 在ARM-Linux 平台
No.58837
作者:sz20120406
邮件:383959053@qq.com
ID:130937
登陆:2次
文章数:69篇
最后登陆IP:111.222.53.176
最后登陆:2012/5/2 17:40:27
注册:2012/4/11 12:44:55
财富:101
发帖时间:2012/4/11 12:49:09
发贴者IP:183.14.0.223
标题:sz20120406:
SQLite 在ARM-Linux 平台上的实现[原创]
摘要:No.58837SQLite 在ARM-Linux 平台上的实现[原创] SQLite 在ARM-Linux 平台上的实现
SQLite 嵌入式数据库提供了以源码发布的方式,要在众多的硬件平台进行移植,可以根据不同平台对源码进行交叉编译来实现。编译主要有以下几个步骤:
① 到http :/ / www. sqlite. org/ 的cvs中下载最新的源代码包,解压并根据需要进行适当的修改后将生成sqlite目录,另外新建并转到一个与sqlite目录平行的同级目录,如make目录。
②用“echo $PATH”命令查看PATH中是否已经包含交叉编译工具arm linux gcc。
③为了在ARM Linux下能正常运行sqlite,需要对sqlite/ src/ sqliteInt . h作一定的修改,以确保bt ree (B 树)有正确的变量大小,如“pt r”和“char 3 ”。不同体系结构的Linux,如x86 和ARM,会有些差别。对于ARM2Linux可以找到如下部分:
# ifndef IN TPTR_ TYPE
# if SQL ITE_PTR_SZ = = 4
# define IN TPTR_ TYPE int
# else
# define IN TPTR_ TYPE long long
# endif
在上面的代码前加上一句
# define SQL ITE_PTR_SZ 4
这样后面的“typedef INTPTR_ TYPE pt r ;”就是定义的“int”类型,而不是“long long”。
④准备使用configure进行一些配置。请在sqlite目录下的configure中找到如下4处,并将他们注释掉,这样可以让configure不去检查你的交叉编译环境。
⑤修改Makefile文件。将代码行BCC = arm linux gcc g O2 改成BCC = gcc g O2 。另外,一般是以静态链接的形式将sqlite 放到ARM Linux 的硬件板上运行的,所以继续修改Makefile ,找到标记为sqlite :的代码段,将其中的libsqlite. la 改成. libs/ libsqlite. a 。做完上述修改,用make 生成sqlite 、libsqlite. a 、libsqlite. so 。为了减小执行文件大小可以用st rip 处理,去掉其中的调试信息。
⑥在ARM 板上运行sqlite。将sqlite 拷贝到ARM板上,方法很多,需要根据具体的情况来选择。如ftp 、cm2 dftp 、wget 等。将sqlite下载到ARM 板的/ tmp 目录,因为此目录是可写的。修改权限并运行:
chmod + wx sqlite
. / sqlite test . sqlite
会出现
sqlite >
如果一切正常,现在sqlite已经在ARM Linux下跑了起来,然后就可以基于此进行进一步的应用开发了。
4 SQLite 在ARM- Linux 系统中应用实例
在基于Linux的媒体网络附属存储(media network attached storage,Media NAS)系统中,选用SQLite数据库作为NAS系统中媒体数据的存储数据库,使得数字媒体播放设备通过UPnP ( universal plug-and-play)协议对NAS上的媒体文件进行播放 ......
>>返回讨论的主题
发表回复
用户名
*
您没有注册?
密码
*
验证码
*
.
标题
选择话题
[原创]
[转帖]
[灌水]
[讨论]
[求助]
[推荐]
[公告]
[注意]
[贴图]
[建议]
[下载]
[分享]
*
心情
随便说说
我回答你
最新发现
得意的笑
气死我了
真是没劲
坚决同意
表示反对
大家过来
好奇怪哟
懒得理它
大家小心
文件上传
允许类型
gif
jpg
jpeg
bmp
png
rar
txt
zip
mid
sch
pcb
ddb
iso
rtf
pdf
doc
ini
swf
内容
字体:
宋体
楷体
新宋体
黑体
隶书
Andale Mono
Arial
Arial Black
Book Antiqua
Century Gothic
Comic Sans MS
Courier New
Georgia
Impact
Tahoma
Times New Roman
Trebuchet MS
Script MT Bold
Stencil
Verdana
Lucida Console
字体大小:
1
2
3
4
颜色:
#F0F8FF
#FAEBD7
#00FFFF
#7FFFD4
#F0FFFF
#F5F5DC
#FFE4C4
#000000
#FFEBCD
#0000FF
#8A2BE2
#A52A2A
#DEB887
#5F9EA0
#7FFF00
#D2691E
#FF7F50
#6495ED
#FFF8DC
#DC143C
#00FFFF
#00008B
#008B8B
#B8860B
#A9A9A9
#006400
#BDB76B
#8B008B
#556B2F
#FF8C00
#9932CC
#8B0000
#E9967A
#8FBC8F
#483D8B
#2F4F4F
#00CED1
#9400D3
#FF1493
#00BFFF
#696969
#1E90FF
#B22222
#FFFAF0
#228B22
#FF00FF
#DCDCDC
#F8F8FF
#FFD700
#DAA520
#808080
#008000
#ADFF2F
#F0FFF0
#FF69B4
#CD5C5C
#4B0082
#FFFFF0
#F0E68C
#E6E6FA
#FFF0F5
#7CFC00
#FFFACD
#ADD8E6
#F08080
#E0FFFF
#FAFAD2
#90EE90
#D3D3D3
#FFB6C1
#FFA07A
#20B2AA
#87CEFA
#778899
#B0C4DE
#FFFFE0
#00FF00
#32CD32
#FAF0E6
#FF00FF
#800000
#66CDAA
#0000CD
#BA55D3
#9370DB
#3CB371
#7B68EE
#00FA9A
#48D1CC
#C71585
#191970
#F5FFFA
#FFE4E1
#FFE4B5
#FFDEAD
#000080
#FDF5E6
#808000
#6B8E23
#FFA500
#FF4500
#DA70D6
#EEE8AA
#98FB98
#AFEEEE
#DB7093
#FFEFD5
#FFDAB9
#CD853F
#FFC0CB
#DDA0DD
#B0E0E6
#800080
#FF0000
#BC8F8F
#4169E1
#8B4513
#FA8072
#F4A460
#2E8B57
#FFF5EE
#A0522D
#C0C0C0
#87CEEB
#6A5ACD
#708090
#FFFAFA
#00FF7F
#4682B4
#D2B48C
#008080
#D8BFD8
#FF6347
#40E0D0
#EE82EE
#F5DEB3
#FFFFFF
#F5F5F5
#FFFF00
#9ACD32
点击加入表情
选项
有回复时用短消息通知您?
老古网
执行:16毫秒 最大:78531毫秒 查询6次