将sqlite3移植到嵌入式Linux开发板M6708上

开发 开发工具
本文介绍如何成功地将sqlite3移植到M6708-T工控板上,可供相关的开发人员参考。

最近,因为项目的需要,我们购买了广州致远电子有限公司的M6708-T工控板(预装Linux系统),准备将sqlite3移植到本嵌入式开发板上。笔者参考了网上的很多文章,均无法达到成功移植的目的。在多方摸索之下,终于采用了一种简单的方法成功实现了移植。本文介绍如何成功地将sqlite3移植到M6708-T工控板上,可供相关的开发人员参考。

准备工作

在本机上安装好Linux系统(一般都是安装在虚拟机上面的),并按照工控板的用户手册在Linux系统上安装交叉开发的工具链。

将工控板上电,能够通过串口或网络等方式登录到Linux系统中。这里建议为工控板设置静态的ip地址,这样以后上传程序比较方便。

登录到sqlite的官网(https://www.sqlite.org/)上去下载***的sqlite源代码,如下截图所示:

登录到sqlite的官网(https://www.sqlite.org/)上去下载***的sqlite源代码

移植步骤

***步:将sqlite源代码拷贝到虚拟机的Linux系统目录中,并使用命令tar xvf sqlite-autoconf-3200100.tar.gz解压,生成sqlite-autoconf-3200100目录,转到该目录中,可看到文件列表如下截图所示:

移植步骤

第二步:使用交叉编译工具编译代码,生成sqlite的可执行文件。在编译之前,可以用echo $CC命令查看系统上的编译工具是否是交叉编译工具而非系统自带的gcc,执行该命令后的结果如下截图所示:

确认交叉编译工具正确之后,便可执行命令$CC sqlite3.c shell.c -o sqlite3 -lpthread –ldl生成可执行文件sqlite3,执行该命令后的结果如下截图所示:

第三步:将生成的可执行文件sqlite3从虚拟机拷贝到本机目录下,并利用FTP工具将之上传到工控板的目录下。这里,笔者使用了FileZilla软件将sqlite3上传到/usr/local/DT/sqlite目录下,如下截图所示:

第四步:将上传之后的sqlite3文件移动到/usr/bin目录下,并赋予可执行的权限。执行mv sqlite3 /usr/bin/命令移动文件,并使用命令chmod 777 sqlite3修改权限。命令执行过程的截图如下所示:

第五步:执行命令sqlite3即可成功启动数据库。数据库启动之后的截图如下所示:

通过以上五个步骤,sqlite就被成功移植到了工控板上,接下来便可以进行建表等操作了,也可以编写代码调用数据库的API实现对数据的存储及读取操作了。

总结

在很多参考文章中,都是通过运行configure和make命令来生成sqlite3可执行文件的,笔者最开始也使用了这种方法,但生成的可执行文件在工控板上无法运行。笔者重复试了很多次,也没有找到无法成功移植的原因。因此采用了在本文中描述的方法,轻松实现了sqlite数据库的移植。

当然,相比于PC版的Linux来说,嵌入式开发板上的Linux的功能被裁剪了很多,这也导致了很多命令是没有的。我们在将一些程序移植到嵌入式开发板上的时候,一定要意识到它与普通的操作系统之间的差别。

【本文是51CTO专栏作者周兆熊的原创文章,作者微信公众号:周氏逻辑(logiczhou)】

戳这里,看该作者更多好文

责任编辑:赵宁宁 来源: 51CTO专栏
相关推荐

2011-03-17 17:36:01

iptables嵌入式Linux

2013-04-09 16:47:19

iOS嵌入式数据库SQLit

2011-06-17 09:34:02

Qt 4.5.1 Sqlite 移植

2011-06-17 09:19:03

Qt 4.5.1 Sqlite 移植

2011-01-14 13:13:23

嵌入式Linux开发

2014-11-18 10:47:12

AMD嵌入式G系列

2014-11-18 10:44:07

AMD嵌入式G系列

2011-01-13 14:19:41

solarisLinux

2021-01-19 15:57:53

CorelliumMacLinux

2021-12-16 15:14:54

鸿蒙HarmonyOS应用

2011-06-15 14:19:11

QT 移植

2020-11-24 11:41:30

websocket

2011-06-13 14:00:55

Qt Designer linux

2011-01-06 15:11:09

嵌入式linux

2021-02-15 15:40:28

SQLite3数据库

2020-09-17 09:40:20

数据库Sqlite3命令

2010-01-13 09:51:21

微软Linux嵌入式

2024-08-26 08:40:48

Linuxmain函数

2009-07-17 16:06:59

ARM嵌入式开发

2009-12-09 10:12:28

嵌入式Linux
点赞
收藏

51CTO技术栈公众号