Hi all,
I had been trying to make Sqlite work in a target embedded system.
When the application is executed, the Sqlite statements fail to return any 
results. On further analysis, it was found that the 64 bit data type is causing 
the issue. The cross compilation tool chain used is GCC for ARM from Code 
Sourcery.
The actual error was that the 64 bit variable contents were 32 bit word swapped 
i.e. 0x02 was interpreted as 0x0200000000.  There were similar problems 
wherever the 'Sqlite3_int64' datatypes were used.
I went through some of the discussions about a 32 bit port for Sqlite.  When I 
do compile with those options (see below), I end up with source code which 
contains left shifting a 32 bit variable 32 times and the like.
        -DSQLITE_32BIT_ROWID=1  -DSQLITE_INT64_TYPE=long

Your help would be appreciated.
Thanks,Girish





Steps used to create the sqlite library.
1. Download canonical source files. Used version 3.7.10.2. Cygwin GCC is used 
in the Host machine.3. For cross compilation, GCC for ARM from Code Sourcery is 
used.4. Modified the makefile in the canonical sources to use Cygwin GCC.5. 
'make sqlite3.c' is given for creating the amalgamation source code.6. The 
amalgamation source code is compiled with the application code for creating the 
final executable binary.
Also, tried to create 'libsqlite3.a' file using the canonical source files but 
ran into the following error."gcc.exe: CreateProcess: No such file or 
directory".  Hence the amalgamation code is compiled with application.



                                          
_______________________________________________
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to