SQLite3 ARM平台交叉编译

编译前准备工作

  1. 平台及资源
    主机环境:ubuntu 14.04
    开发板 :米尔科技 ARM 335X 系列
    SQLite:SQLite3.26 下载网址:https://www.sqlite.org/2018/sqlite-autoconf-3260000.tar.gz
    编译器:arm-linux-gnueabihf 交叉编译器最好选择开发板厂商提供的交叉编译工具链

  2. 配置交叉编译器的环境变量
    在~/.profile中添加环境变量指定到交叉编译器的bin目录下,例如:
    export PATH=$PATH:/home/zzl/work/gcc-linaro-5.3-2016.02-x86_64_arm-linux-gnueabihf/bin
    并执行 source ~/.profile 使配置生效
    使用 arm-linux-gnueabihf-gcc -v 命令查看当前版本号,同时检查环境变量配置是否生效。
    SQLite3 ARM平台交叉编译_第1张图片

交叉编译SQLite3

  1. 解压缩sqlite-autoconf-3260000.tar.gz文件
  2. 进入目录
  3. 在终端输入
    例如(目录需更具自己情况修改):
./configure --prefix=/home/zzl/arm/sqlite --host=arm-linux-gnueabihf 

–prefix指定目标文件的路径,–host指定目标平台(即为刚刚配置环境变量的交叉编译器)

make -j4&&make install

编译完成之后,检查–prefix指定的目标文件夹下文件
SQLite3 ARM平台交叉编译_第2张图片

zzl@ubuntu:~/arm2$ cd sqlite/
zzl@ubuntu:~/arm2/sqlite$ ls
bin  include  lib  share
zzl@ubuntu:~/arm2/sqlite$ cd bin
zzl@ubuntu:~/arm2/sqlite/bin$ ls
sqlite3
zzl@ubuntu:~/arm2/sqlite/bin$ file sqlite3
sqlite3: ELF 32-bit LSB  executable, ARM, EABI5 version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=2aa548029c2e40280d451b9e053ce2106c51217d, not stripped

使用file命令查看bin目录下的sqlite3文件,可以看见该执行文件是ARM架构,说明编译成功。

安装SQLite3

  1. 将编译出来的目标文件夹拷贝至开发板(推荐使用scp命令)
  2. 进入sqlite文件夹中,输入命令
cp ./bin/sqlite3 /usr/bin
cp ./lib/libsqlite3.so.0.8.6 /usr/lib
cd /usr/lib
ln -s libsqlite3.so.0.8.6 libsqlite3.so.0
ln -s libsqlite3.so.0.8.6 libsqlite3.so

这些命令主要是将sqlite3文件加入到开发板的bin目录下,将lib库中的libsqlite3.so.0.8.6复制到开发板的usr/lib目录下,将sqlite动态库文件做链接。
使用/etc/profile配置环境变量效果相同

  1. 安装完成之后在终端键入 sqlite3,若出现以下提示,则说明安装成功!
    SQLite3 ARM平台交叉编译_第3张图片
    输入.quit退出sqlite3。

你可能感兴趣的:(嵌入式)