将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
相关推荐
HardCodeV5 分钟前
NestJS
数据库·oracle
花好月圆春祺夏安21 分钟前
基于odoo17的设计模式详解---备忘模式
数据库·设计模式
有想法的py工程师1 小时前
PostgreSQL 查询库中所有表占用磁盘大小、表大小
数据库·postgresql
神仙别闹2 小时前
基于ASP.NET MVC+SQLite开发的一套(Web)图书管理系统
sqlite·asp.net·mvc
R_AirMan2 小时前
深入浅出Redis:一文掌握Redis底层数据结构与实现原理
java·数据结构·数据库·redis
Hello.Reader2 小时前
RedisJSON 内存占用剖析与调优
数据库·redis·缓存
wkj0013 小时前
php 如何通过mysqli操作数据库?
android·数据库·php
九皇叔叔5 小时前
【9】PostgreSQL 之 vacuum 死元组清理
数据库·postgresql
风雅的远行者5 小时前
mysql互为主从失效,重新同步
数据库·mysql
宇钶宇夕6 小时前
S7-1200 系列 PLC 中 SCL 语言的 PEEK 和 POKE 指令使用详解
运维·服务器·数据库·程序人生·自动化