本章節介紹如何將 sqlite3 移植到 ARM 開發板上,以及在開發板上用 C 語言操作 sqlite3,相關的配套資料在網盤資料“iTOP-i.MX6 開發板資料匯總(不含光盤資料)\08_iTOP-i.MX6 開發板 Linux 系統開發資料\25-QT 系統 Sqlite3 移植和使用”目錄。操作源碼下載地址:![]() 我們直接下載最新版(3.32.3 版本),我們把下載后的壓縮包放在了文檔目錄底下: ![]() 1 將下載的壓縮包 sqlite-autoconf-3320300.tar.gz 解壓后創建安裝目錄 mkdir install,如下圖所示: ![]() 2 進 入 解 壓 后 的 目 錄 , 配 置 編 譯 選 項 : ./configure --host=arm-none-linux-gnueabi --prefix=/home/topeet/iMX6Q/sqlite3/install/ 。 --host: 指定交叉編譯工具,和編譯 Linux 的編譯器一致。 --prefix:指定安裝目錄,編譯后生成的文件放在此目錄,必須是絕對路徑 ![]() 3 執行 make,完成后如下圖所示: ![]() 3 執行 make,完成后如下圖所示: ![]() 5 查看 install 目錄下是否生成了需要的文件。 ![]() 6 將 lib 目錄下的庫文件拷貝到開發板的/lib/目錄下,將 bin 目錄下的 sqlite3 拷貝到開發板的/bin/目錄下。 7 在開發板的終端命令行輸入 sqlite3,會進入如下圖所示: ![]() 8 測試: 1 新建表,輸入 create table user (id int,name char,age int); 然后查詢表,輸入.table,即可查到剛創建的 user 表,如圖 83.9 所示: ![]() 2 創建.db 文件 輸入 sqlite3 /路徑/文件名.db 操作完后一定要輸入.databases。 ![]() 3 編寫 C 代碼測試: 現在數據庫創建表,插入數據: create table demo (id int,name char,age int); insert into demo values(100,'WangWu',23); insert into demo values(101,'Tommm',25); select * from demo; ![]() C 代碼如下,具體可參照目錄下的 demo 源碼 ![]() 輸入如下命令交叉編譯:arm-none-linux-gnueabi-gcc -I/home/topeet/iMX6Q/sqlite3/install/include/ -L /home/topeet/iMX6Q/sqlite3/install/lib/ -o sql testSql.c -lsqlite3 -ldl -I 指定了 sqlite3.h 所在路徑, -L 指定 sqlite3 的 lib 庫路徑。 ![]() 將生成的可執行文件 sql 拷貝到開發板 root 目錄下 執行后可看到查詢結果: ![]() 至此 sqlite3 的移植和簡單使用介紹結束。迅為IMX6Q開發板 ![]() |