歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> Linux編程

移植SQLite3.8到ARM開發板過程

OS:Ubuntu 12.04 Desktop

開發板:s5pv210(contex-a8)

1、 下載sqlite-autoconf-3080301.tar.gz(http://www.sqlite.org/)
2、解壓到某個文件夾下
mkdir sqlite3
tar zxvf sqlite-autoconf-3080301.tar.gz -C sqlite3

3、配置,這裡安裝到當前文件夾下的sqlite下
cd sqlite3
mkdir install

./configure –prefix=./install --host=arm-linux
4 、make
這時候卻出現錯誤:
//--------------------------------------------------------------------------------------------------------
[sqlite3]make
/bin/bash ./libtool --tag=CC --mode=compile arm-linux-gcc -DPACKAGE_NAME=\"sqlite\" -DPACKAGE_TARNAME=\"sqlite\" -DPACKAGE_VERSION=\"3.8.3.1\" -DPACKAGE_STRING=\"sqlite\ 3.8.3.1\" -DPACKAGE_BUGREPORT=\"http://www.sqlite.org\" -DPACKAGE_URL=\"\" -DPACKAGE=\"sqlite\" -DVERSION=\"3.8.3.1\" -D_FILE_OFFSET_BITS=64 -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_FDATASYNC=1 -DHAVE_USLEEP=1 -DHAVE_LOCALTIME_R=1 -DHAVE_GMTIME_R=1 -DHAVE_DECL_STRERROR_R=1 -DHAVE_STRERROR_R=1 -DHAVE_POSIX_FALLOCATE=1 -I. -D_REENTRANT=1 -DSQLITE_THREADSAFE=1 -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_RTREE -g -O2 -MT sqlite3.lo -MD -MP -MF .deps/sqlite3.Tpo -c -o sqlite3.lo sqlite3.c
libtool: compile: arm-linux-gcc -DPACKAGE_NAME=\"sqlite\" -DPACKAGE_TARNAME=\"sqlite\" -DPACKAGE_VERSION=\"3.8.3.1\" "-DPACKAGE_STRING=\"sqlite 3.8.3.1\"" -DPACKAGE_BUGREPORT=\"http://www.sqlite.org\" -DPACKAGE_URL=\"\" -DPACKAGE=\"sqlite\" -DVERSION=\"3.8.3.1\" -D_FILE_OFFSET_BITS=64 -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_FDATASYNC=1 -DHAVE_USLEEP=1 -DHAVE_LOCALTIME_R=1 -DHAVE_GMTIME_R=1 -DHAVE_DECL_STRERROR_R=1 -DHAVE_STRERROR_R=1 -DHAVE_POSIX_FALLOCATE=1 -I. -D_REENTRANT=1 -DSQLITE_THREADSAFE=1 -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_RTREE -g -O2 -MT sqlite3.lo -MD -MP -MF .deps/sqlite3.Tpo -c sqlite3.c -fPIC -DPIC -o .libs/sqlite3.o
arm-none-linux-gnueabi-gcc: 3.8.3.1": No such file or directory
<command-line>: warning: missing terminating " character
make: *** [sqlite3.lo] Error 1
//--------------------------------------------------------------------------------------------------------

解決方法:
修改Makefile中的 -DPACKAGE_STRING=\"sqlite 3.8.3.1\" 把sqlite和3.8.3.1中間的空格去掉

再次
make
通過!

5、 然後make install,在當前目錄install目錄中生成 bin include lib share 文件目錄
6、進入bin文件,執行arm-linux-strip sqlite3(去掉調試信息)
[install/bin]ls -l
total 164
-rwxr-xr-x 1 delong delong 107919 3月 6 23:16 sqlite3
-rwxr-xr-x 1 delong delong 54108 3月 6 23:11 sqlite3_b

sqlite3沒有用arm-linux-strip處理過,sqlite3_b用arm-linux-strip處理過。
7、將bin文件下的sqlite3執行文件拷至開發板bin文件下,lib文件夾下的所有文件拷至開發板的/lib文件夾下就可以使用了。

 

Copyright © Linux教程網 All Rights Reserved