Thanks a lot...

I have finally got it to compile (DLL was generated), but a lot of warnings 
appeared. Warnings of all of this kind:

"warning C4244: 'function' : conversion from 'i64' to 'int', possible loss of 
data      c:\WorkingFolder\Proyectos\Lean\RFID\SQLite3\btree.c "
" warning C4244: 'function' : conversion from 'i64' to 'u32', possible loss of 
data     c:\WorkingFolder\Proyectos\Lean\RFID\SQLite3\btree.c "
"warning C4018: '>' : signed/unsigned mismatch  

And a lot of similar warnings. 82 in total.

Can I safely ignore them?


-----Original Message-----
From: sqlite-users [] On 
Behalf Of Jim Borden
Sent: lunes, 20 de marzo de 2017 19:54
To: SQLite mailing list <>
Subject: Re: [sqlite] SQLite does not support ARM platform?

Oh, you are talking about WinCE?  I don’t think you should be thinking in terms 
of “ARM vs non-ARM” but rather “X platform vs Y platform.”  As others have 
noted, sqlite obviously runs on ARM and the issue is not with sqlite but with 
the way you are trying to compile it or the platform you are trying to compile 
it for.  It totally slipped my mind that WinCE would probably be ARM as well 
(and honestly I didn’t even realize it was still around!).  

I think WinCE has its own build for sqlite: probably due to rather extreme limitations.

On 2017/03/21 7:41, "sqlite-users on behalf of Jaime Stuardo" 
< on behalf of> wrote:

    I use to develop mobile applications for years using VS 2008, and in fact, 
I have just developed a MFC C++ application that runs in the ARM machine 
without problem. I need to use SQLite3 for my application. That is why I need 
to compile it.
    > On 20 Mar 2017, at 23:17, Jaime Stuardo <> wrote:
    > Thanks all who answered.
    > Yes... it seems a MSVC limitation, however, it is very strange. I am 
using Visual Studio 2008 which does support ARM compilation.  I did that, 
adding some compiler switches for target WIN32_CE but I got million of 
warnings, of this type:
    > sqlite3.c(166) : warning C4005: 'OS_VXWORKS' : macro redefinition
    >        sqlite3.c(158) : see previous definition of 'OS_VXWORKS'
    > sqlite3.c(216) : warning C4005: 'GCC_VERSION' : macro redefinition
    >        sqlite3.c(214) : see previous definition of 'GCC_VERSION'
    > sqlite3.c(222) : warning C4005: 'CLANG_VERSION' : macro redefinition
    >        sqlite3.c(220) : see previous definition of 'CLANG_VERSION'
    > sqlite3.c(227) : warning C4005: 'MSVC_VERSION' : macro redefinition
    >        sqlite3.c(225) : see previous definition of 'MSVC_VERSION'
    > sqlite3.c(10924) : warning C4005: 'SQLITE_DEFAULT_PAGE_SIZE' : macro 
    >        sqlite3.c(10920) : see previous definition of 
    > sqlite3.c(10939) : warning C4005: 'SQLITE_MAX_DEFAULT_PAGE_SIZE' : macro 
    >        sqlite3.c(10935) : see previous definition of 
    > sqlite3.c(11015) : warning C4005: 'SQLITE_INT_TO_PTR' : macro redefinition
    >        sqlite3.c(11012) : see previous definition of 'SQLITE_INT_TO_PTR'
    > sqlite3.c(11016) : warning C4005: 'SQLITE_PTR_TO_INT' : macro redefinition
    >        sqlite3.c(11013) : see previous definition of 'SQLITE_PTR_TO_INT'
    > sqlite3.c(11018) : warning C4005: 'SQLITE_INT_TO_PTR' : macro redefinition
    >        sqlite3.c(11015) : see previous definition of 'SQLITE_INT_TO_PTR'
    > sqlite3.c(11019) : warning C4005: 'SQLITE_PTR_TO_INT' : macro redefinition
    >        sqlite3.c(11016) : see previous definition of 'SQLITE_PTR_TO_INT'
    > sqlite3.c(11021) : warning C4005: 'SQLITE_INT_TO_PTR' : macro redefinition
    > I need to compile this for Windows Mobile ARM device. Is there another 
way to do it by mean of other compiler that works in Windows? I need to use 
Windows since the output file should be a DLL.
    Given that Windows for ARM was released around 2013 (if I remember 
correctly), I doubt that MSVC2008 will do. Sadly, GCC doesn’t support ARM for 
Windows as a target, and clang is on the way, but wasn’t ready yet last time I 
    That being said, Windows for ARM/Windows RT doesn’t support “Desktop 
applications”. Is there any reason why need to have a DLL, and not the prebuilt 
package? I’d understand the need for native code, but then I’m not sure you can 
do that with anything earlier than Visual Studio 2013
    > By opening sqlite3.c I found directives such as this:
    > if defined(_MSC_VER) && _MSC_VER>=1400
    > That suggests me that the code is prepared for MSVC also, but it is not 
    > Does somebody have experience compiling this in MSVC?
    > Regards
    > Jaime
    sqlite-users mailing list
    sqlite-users mailing list

sqlite-users mailing list

sqlite-users mailing list

Reply via email to