sqlite 的移植與安裝

2021-05-04 03:47:43 字數 2541 閱讀 4260

標籤: sqlite3,linux

1.源**的獲取

sqlite是乙個功能強大、體積小運算速度快的嵌入式資料庫,採用了全c語言封裝,並提供了八十多個命令介面,可移植性強,使用方便。

sqlite源**:

sqlite-3.6.17.tar.gz

2.sqlite移植到x86

for linux

l解壓檔案

//建立乙個資料夾,將源**放在這個資料夾中。

mkdir /work/sqlite

cp sqlite-3.6.17.tar.gz /work/sqlite

//解壓檔案

cd/work/sqlite

tarxvzf sqlite-3.6.17.tar.gz

l配置

//建立x86目錄

mkdir sqlite_x86

//開啟檔案

cd sqlite-3.6.17

//配置sqlite

./configure --prefix=/work/sqlite/sqlite_x86 --disable-tcl

l編譯

make

l安裝

make install

l測試

當安裝完成以後,安裝檔案會安裝在/work/sqlite/sqlite_x86目錄中,一種產生了,lib,include和bin三個資料夾,分別是庫檔案,標頭檔案和可執行檔案。

到這裡是不是有點躍躍欲試了,是的,我們可以測試sqlite了,當檔案安裝後,我們可以直接通過安裝好的sqlite3來實現。

cd sqlite_x86/bin

./sqlite3 test.db //開啟或建立test.db資料庫檔案

create table test (id integer primary key, value text); //建立**和欄位名

insert into test (value) values('hxl'); //新增一條資料

insert into test (value) values('sqlite'); //新增一條資料

insert into test (value) values('test'); //新增一條資料

insert into test (value) values('for'); //新增一條資料

insert into test (value) values('linux'); //新增一條資料

//到此資料庫基本家裡就完成了,來看看資料庫裡面的檔案吧

.mode col

.headers on //列印出資料庫的表頭

select * from test; //顯示資料庫中的所有檔案

.exit //退出

3.sqlite移植到arm

l配置

//建立x86目錄

mkdir ../../sqlite_arm

//開啟檔案

cd ../../sqlite-3.6.17

//配置sqlite

./configure --prefix=/work/sqlite/sqlite_arm --disable-tcl —host=arm-linux

l編譯

make

l安裝

make install

l測試

當安裝完成以後,安裝檔案會安裝在/work/sqlite/sqlite_x86目錄中,一種產生了,lib,include和bin三個資料夾,分別是庫檔案,標頭檔案和可執行檔案。

將lib中的檔案複製到開發板的lib中,現在編寫乙個c檔案test.c來驅動它。

static int callback(void *notused, int argc, char **argv, char **azcolname)

printf("/n");

return 0;

}

int main(int argc, char **argv)

rc = sqlite3_open(argv[1], &db);

if( rc )

rc = sqlite3_exec(db, argv[2], callback, 0, &zerrmsg);

if( rc!=sqlite_ok )

sqlite3_close(db);

return 0;

}上面的**是sqlite官方的測試**,雖然很簡單但是也很強大,一般應用都夠了,再了解一下sqlite的語法就可以實現強大的功能了,編譯方法如下,在這裡假設你已經安裝好了arm-linux-gcc,我採用的是arm-linux-gcc-4.3.2,編譯方法如下:

arm-linux-gcc -o test test.c -sqlite3 -l/work/sqlite/sqlite_arm/lib -i/work/sqlite/sqlite_arm/include

將資料庫複製在當前資料夾,測試方法:

./test ./test test.db "select * from test;"

SQLite移植手記

前幾天成功地把berkeley db移植到uclinux上,雖然可以正常工作了,但是檔案還是太大了些。今天來試乙個稍微小一點的,它叫sqlite。sqlite實現了大部分sql92標準的sql語句,同時支援acid。還有其它許多特性這裡不做深究,因為這在嵌入式領域來說應該是夠用了。hily jian...

SQLite移植手記1

sqlite實現了大部分sql92標準的sql語句,同時支援acid。還有其它許多特性這裡不做深究,因為這在嵌入式領域來說應該是夠用了。我使用的還是當前最新版本 sqlite 3.3.7.tar.gz 寫完的時候已經更新出3.3.8版本了,真快啊 安裝 時間不多,簡單介紹安裝過程 解壓sqlite到...

sqlite移植到arm(一)

虛擬機器 redhat 5 arm linux gcc 3.4.6 專案需要 這個社群看看有沒有。2 將tar包放在虛擬機器的 opt下,解壓,並在同級目錄下建立build資料夾,用來放之後產生的四個包。3 進入解壓後的資料夾,執行 4 之後執行 5 最後執行 這個時候,你剛才建立的build資料夾...