Welcome 微信登录

首页 / 操作系统 / Linux / 移植sqlite3.7.4到s3c2440(本人使用的是TQ2440)

编译环境: 主机:Ubuntu10.10交叉编译工具:4.3.3开发板:tq2440源码:sqlite-autoconf-3070400.tar.gz (下载于:http://www.sqlite.org/download.html
 1.解压数据库源文件并进入解压后的目录,如下:  #tar - zxvf sqlite-autoconf-3070400.tar.gz
 #cd
sqlite-autoconf-3070400 2.配置   #./configure --host=arm-linux --prefix=/opt/EmbedSky/apps/sqlite-autoconf-3070400/install3.7.4 --disable-tcl  看提示,好像--disable-tcl 这句华没什么用了 3.make  #make  这时候却出现错误:
  1. # make   
  2. if /bin/bash ./libtool --tag=CC --mode=compile arm-linux-gcc -DPACKAGE_NAME="sqlite" -DPACKAGE_TARNAME="sqlite" -DPACKAGE_VERSION="3.7.4" -DPACKAGE_STRING="sqlite 3.7.4" -DPACKAGE_BUGREPORT="http://www.sqlite.org" -DPACKAGE="sqlite" -DVERSION="3.7.4" -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 -DHAVE_FDATASYNC=1 -DHAVE_USLEEP=1 -DHAVE_LOCALTIME_R=1 -DHAVE_GMTIME_R=1 -I. -I.    -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;    
  3.     then mv -f ".deps/sqlite3.Tpo" ".deps/sqlite3.Plo"else rm -f ".deps/sqlite3.Tpo"; exit 1; fi   
  4. mkdir .libs   
  5.  arm-linux-gcc -DPACKAGE_NAME="sqlite" -DPACKAGE_TARNAME="sqlite" -DPACKAGE_VERSION="3.7.4" "-DPACKAGE_STRING="sqlite 3.7.4"" -DPACKAGE_BUGREPORT="http://www.sqlite.org" -DPACKAGE="sqlite" -DVERSION="3.7.4" -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 -DHAVE_FDATASYNC=1 -DHAVE_USLEEP=1 -DHAVE_LOCALTIME_R=1 -DHAVE_GMTIME_R=1 -I. -I. -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   
  6. arm-none-linux-gnueabi-gcc: 3.7.4": No such file or directory   
  7. <command-line>: warning: missing terminating " character   
  8. make: *** [sqlite3.lo] 错误 1  
这时候参考了网友博客(表示感谢!),需要: 修改Makefile中的 -DPACKAGE_STRING="sqlite 3.7.4" 把sqlite和3.7.4中间的空格去掉 修改后编译就没问题了,#make#make install4.将/opt/EmbedSky/apps/sqlite-autoconf-3070400/install3.7.4 目录下的bin目录和lib目录下的内容分别复制到开发板的/bin目录和/lib目录下,就可以使用sqlite3了在开发板上运行# sqlite3
SQLite version 3.7.4
Enter ".help" for instructions
sqlite>OK!表明移植成功!