Hello, I have tried to generate the executable "sqlite3.exe" appropiate for Windows CE (ARM processor).
I used the CeGcc compiler from http://cegcc.sourceforge.net ("cegcc_mingw32ce_cygwin1.7_r1399.tar.bz2" or "cegcc_mingw32ce_cygwin1.7_r1375.tar.bz2"). I executed the compiler under Cygwin (www.cygwin.com), and got two errors: $ /opt/mingw32ce/bin/arm-mingw32ce-gcc-4.4.0.exe -o sqlite3.exe shell.c sqlite3.c shell.c: In function 'hasTimer': shell.c:159: warning: passing argument 2 of 'GetProcAddressW' from incompatible pointer type /opt/mingw32ce/lib/gcc/arm-mingw32ce/4.4.0/../../../../arm-mingw32ce/include/winbase.h:1626: note: expected 'LPCWSTR' but argument is of type 'char *' sqlite3.c: In function 'localtime': sqlite3.c:33344: warning: integer constant is too large for 'long' type /tmp/cc4vuRzt.o:shell.c:(.text+0x84c0): undefined reference to `_isatty' /tmp/ccaHcKQQ.o:sqlite3.c:(.text+0x10c5c): undefined reference to `osUnlockFileEx' collect2: ld returned 1 exit status In order to solve these two errors I have done the following: Error 1 (shell.c) ===== The line number 134 is #include <windows.h> I had to move it after line number 68, that is, BEFORE any reference to the flag "_WIN32_WCE" is being maded. I guest that flag is defined at <windows.h> Error 2 (sqlite3.c) ===== Instead of #if !SQLITE_OS_WINCE { "UnlockFileEx", (SYSCALL)UnlockFileEx, 0 }, #define osUnlockFileEx ((BOOL(WINAPI*)(HANDLE,DWORD,DWORD,DWORD, \ LPOVERLAPPED))aSyscall[56].pCurrent) #else { "UnlockFileEx", (SYSCALL)0, 0 }, #endif I put #define osUnlockFileEx ((BOOL(WINAPI*)(HANDLE,DWORD,DWORD,DWORD, \ LPOVERLAPPED))aSyscall[56].pCurrent) #if !SQLITE_OS_WINCE { "UnlockFileEx", (SYSCALL)UnlockFileEx, 0 }, #else { "UnlockFileEx", (SYSCALL)0, 0 }, #endif The solution to the error 2 is just an emergency solution for me, so that the compilation goes right. Thanks, Manuel _______________________________________________ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users