近段时间在学数据库,因为自身需求,所以注重研究了点嵌入式sqlite数据库,SQLite,是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如 Tcl、C#、PHP、Java等,还有ODBC接口,同样比起Mysql、PostgreSQL这两款开源世界著名的数据库管理系统来讲,它的处理速度比他们都快。

自我感觉用起来很high的...

就不扯了,下面言归正传:

下面就将sqlite移植到ARM开发板上的具体步骤贴下来,在移植之前首先需要做的工作一是搭建PC端与ARM端数据共享机制,关于这个的方法很多,我在之前的文章中也就nfs共享的具体步骤做过详细的说明,这里就不在累赘了。二是搭建交叉编译环境;检测本机是否已经安装交叉编译环境可在终端中键入#arm-linux-gcc -v进行查看

获取sqlite源码包,源码包可到www.sqlite.org官方网站下载,我在此使用的是sqlite-3.6.18.tar.gz
1.将sqlite-3.6.18.tar.gz解压到/home目录下,并在sqlite-3.6.18目录下建立sqlite-arm-linux目录
#cd /home/sqlite-3.6.18
#mkdir sqlite-arm-linux

2.首先备份configure文件 
#cp configure configure.old
3.修改configure文件,
#./configure --host=arm-linux --disable-tcl --prefix=/home/sqlite-3.6.18/sqlite-arm-linux/
4.修改Makefile文件
BBC = gcc -g -O2 
5.编译并安装
#make && make install
6.为了减小执行文件大小,可用strip处理,去掉其中的调试信息
#cd /home/sqlite-3.6.18/sqlite-arm-linux/bin
#arm-linux-strip sqlite3
7.而后进行移植
对库的拷贝时要加上-arf选项,因为libsqlite3.so, libsqlite3.so.0是链接到libsqlite3.so.0.8.6的
#cd /home/sqlite-3.6.18/sqlite-arm-linux/lib
#cp -arf libsqlite3.so, libsqlite3.so.0, libsqlite3.so.0.8.6 /usr/yang(共享目录)
#cd /home/sqlite-3.6.18/sqlite-arm-linux/bin
#cp sqlite3 /usr/yang(共享目录)
8.在开发板终端中将三个库文件拷贝到其库中,而后即可使用sqlite了。

但要提醒一点的就是,sqlite跟MySQL....有点不一样哟..
我刚开始玩的时候首先就输入了show databases;结果让我很揪心,所以在大家用sqlite之前还是建议先学好用法.

我相信你会在嵌入式数据库中玩的很high的....

【ARM-Linux开发】嵌入式操作系统上的小型数据库移植SQLite相关推荐

  1. ARM+linux+2440嵌入式开发相关经典书籍(转)

    源:ARM+linux+2440嵌入式开发相关经典书籍 转载于:https://www.cnblogs.com/LittleTiger/p/7992971.html

  2. 嵌入式arm linux产品,基于ARM——Linux的嵌入式产品平台构建

    摘要: 随着计算机技术的发展,嵌入式系统已成为计算机领域一个重要组成部分,并成为近年来新兴的研究热点.ARM7TDMI是一种高效,低功耗的RISC处理器,以该内核为核心的 LPC2210 是一款基于以 ...

  3. 移植中文TTS(ekho)到ARM linux开发板

    移植ekho到arm linux,实现将中文转换为.wav格式的语音文件. 移植开源库libsndfile到arm linux开发板 1. 下载压缩源码包libsndfile-1.0.28.tar.g ...

  4. ARM学习(12)基于arm架构的嵌入式操作系统理解

    ARM学习(12)基于arm架构的嵌入式操作系统理解 笔者来聊聊指令集的理解 这里写自定义目录标题 ARM学习(12)基于arm架构的嵌入式操作系统理解 symbol 符号表认识 symbol符号表的 ...

  5. linux占内存小的浏览器,基于μCLinux嵌入式操作系统上的浏览器内存管理策略研究详解...

    0 引言 在嵌入式系统中,由于设备性能限制系统总的可分配内存相对较小,而在嵌入式平台上浏览器正常运行所需内存一般都比较大,并且内存分配和释放操作也比较频繁,例如,IPTV EPG界面上显示各类菜单按钮 ...

  6. 嵌入式linux开发环境 cpu,嵌入式Linux开发环境的搭建之:U-Boot移植-嵌入式系统-与非网...

    5.2  U-Boot移植 5.2.1  Bootloader介绍 1.概念 简单地说,Bootloader就是在操作系统内核运行之前运行的一段程序,它类似于PC机中的BIOS程序.通过这段程序,可以 ...

  7. Linux·主流嵌入式操作系统(RTOS)

    满足实时控制要求的嵌入式操作系统(RTOS)操作系统,以下介绍14种主流的RTOS,分别为μClinux.μC/OS-II.eCos.FreeRTOS.mbed OS.RTX.Vxworks.QNX. ...

  8. linux下s3c2440开发板,SAMSUNG S3C2440 ARM LINUX 开发板 上手初体验 --开发环境搭建

    1,linux开发环境搭建 2,程序测试 easyOpentag驱动安装,打开连接,选择ARM-linux 1,环境搭建 我的系统版本 root@ubuntu:~# lsb_release -a No ...

  9. [Linux]关于在国产操作系统上安装Oracle数据库

    现在国产系统的势头正盛,不少用户都在考虑转向国产系统了. 除了我们开发的业务系统,背后的数据库也是需要考虑的.那么,Oracle数据库是否可以在国产操作系统上正常运行呢? 1.就此咨询了麒麟软件技术人 ...

最新文章

  1. php简单的log文件
  2. setTimeOut() 和 setTimeInterval()
  3. mysql 存储过程out,in,inout分别表示什么
  4. 的setinterval函数_Vue定时器与JS 定时器 setInterval() 和 setTimeout()
  5. [网摘].NET 程序员十种必备工具-概述
  6. laravel mysql 配置,laravel5数据库配置及其注意事项
  7. 【RLchina第四讲】Model-Based Reinforcement Learning
  8. MATLAB设计不同结构的FIR或IIR滤波器
  9. [每日一题] 11gOCP 1z0-052 :2013-09-16 shared server mode........................................B21...
  10. 北语计算机保研,北京中医药大学2021届保研率14.4%,北京语言大学2021推免率10.8%...
  11. python基本代码教程-如何真正零基础入门Python?(第一节)
  12. 迅雷虚拟服务器,迅雷离线服务器UA
  13. 开放式社区?太小儿科了,智慧城市才是重点
  14. 好用的json在线工具
  15. Bitmap对象在内存中的大小和转化为字节流的大小
  16. uni 登录token方法_uni-app 中保持用户登录状态
  17. crt不能回退_CRT优化与QRS波宽度的研究进展
  18. 小学老师如何与不同性格的家长沟通?
  19. 【tensorflow学习之路】如何使用gpu进行运算
  20. MATLAB—离散一元、二元、多元函数求导求梯度(二维、三维、多维空间)(diff和gradient)

热门文章

  1. 数据集的划分,验证集参与训练了吗?
  2. 网上水果店html,开水果店起步先干什么,水果店刚起步要怎么做
  3. 准确率、召回率、F-measure值
  4. hardware knowleage
  5. 高斯消元法求解线性方程组——C语言实现
  6. Mac系统Jython安装与使用
  7. 前端图片无损压缩在线工具
  8. IGX 8400 系列交换机
  9. matlab读取excel画图
  10. mysql1.7(mysql优化,mysql-mmm软件介绍,mysql高可用集群。)