将sqlite3移植到开发板上

1、下载c源码

sqlite官网下载C源码:SQLite Download Page

点击第二个链接下载

2、解压

1、将下载好的c源码,放在linux下,

2、解压压缩包:tar -zxvf sqlite-autoconf-3460100

新建一个用存放 编译出来的文件: mkdir /home/linux/Desktop/build

3、运行配置文件:./configure -host=arm-linux -prefix=/home/linux/Desktop/build

--host:指定交叉编译工具, 和编译 Linux 的编译器一致

--prefix: 指定安装目录, 编译后生成的文件放在此目录, 必须是绝对路径

4、编译

执行configure命令,生成Makefile文件后,执行make命令:make

执行make后,再执行make install

完成之后可以发现,之前所建目录build下生成

bin include lib share四个目录。

3、移植文件

主要用到的文件

有./bin/sqlite3,./include/sqlite3.h以及./lib/下的库文件。

挂载 后复制较大的文件会出现以下问题

cs 复制代码
nfs:server is not responding,still trying

原因分析:NFS 的默认传输协议是 UDP,而PC机与嵌入式系统通过UPD交互时就会出现严重的网卡丢包现象。
解决方法:在客户端(即开发板)改用TCP协议,使用下面的命令,

cs 复制代码
mount -t nfs -o tcp,nolock 192.168.1.200:/home/linux/nfs /mnt

1、bin文件夹下的sqlite3,是sqlite可执行应用程序,下载到板子Linux系统下的/bin目录

并添加文件可执行权限。在板子Linux系统命令行下执行:

cs 复制代码
chmod 777 sqlite3

2、移植库文件

把lib/文件夹下的libsqlite3.so.0.8.6 下载到板子目录/lib下(libsqlite3.so和libsqlite3.so.0都是libsqlite3.so.0.8.6的软链接文件)

下载到板子后,还需对它建立软链接文件,因为可执行程序寻找的动态链接库的名字为libsqlite3.so.0。

cs 复制代码
[root@FriendlyARM plg]# ln -s /lib/libsqlite3.so.0.8.6 /lib/libsqlite3.so.0

交叉编译

在linux下编译sqlite3有关文件到开发板上是,编译命令是

cs 复制代码
arm-linux-gcc main.c -lsqlite3 -I /home/linux/Desktop/build/include -L /home/linux/Desktop/build/lib
相关推荐
RestCloud21 小时前
SQL Server到Hive:批处理ETL性能提升30%的实战经验
数据库·api
RestCloud21 小时前
为什么说零代码 ETL 是未来趋势?
数据库·api
ClouGence1 天前
CloudCanal + Paimon + SelectDB 从 0 到 1 构建实时湖仓
数据库
DemonAvenger1 天前
NoSQL与MySQL混合架构设计:从入门到实战的最佳实践
数据库·mysql·性能优化
AAA修煤气灶刘哥2 天前
后端人速藏!数据库PD建模避坑指南
数据库·后端·mysql
RestCloud2 天前
揭秘 CDC 技术:让数据库同步快人一步
数据库·api
得物技术2 天前
MySQL单表为何别超2000万行?揭秘B+树与16KB页的生死博弈|得物技术
数据库·后端·mysql
可涵不会debug2 天前
【IoTDB】时序数据库选型指南:工业大数据场景下的技术突围
数据库·时序数据库
ByteBlossom2 天前
MySQL 面试场景题之如何处理 BLOB 和CLOB 数据类型?
数据库·mysql·面试
麦兜*2 天前
MongoDB Atlas 云数据库实战:从零搭建全球多节点集群
java·数据库·spring boot·mongodb·spring·spring cloud