I am unable to build sqlite3 on windows. Possible errors in https://sqlite.org/src/doc/trunk/README.md

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

I am unable to build sqlite3 on windows. Possible errors in https://sqlite.org/src/doc/trunk/README.md

Craig Delancy
I am unable to successfully build SQLite3 following your instructions:

"Using MSVC
On Windows, all applicable build products can be compiled with MSVC. First open the command prompt window associated with the desired compiler version (e.g. "Developer Command Prompt for VS2013"). Next, use NMAKE with the provided "Makefile.msc" to build one of the supported targets.

For example:

    mkdir bld
    cd bld
    nmake /f Makefile.msc TOP=..\sqlite
    nmake /f Makefile.msc sqlite3.c TOP=..\sqlite
    nmake /f Makefile.msc sqlite3.dll TOP=..\sqlite
    nmake /f Makefile.msc sqlite3.exe TOP=..\sqlite
    nmake /f Makefile.msc test TOP=..\sqlite
There are several build options that can be set via the NMAKE command line. For example, to build for WinRT, simply add "FOR_WINRT=1" argument to the "sqlite3.dll" command line above. When debugging into the SQLite code, adding the "DEBUG=1" argument to one of the above command lines is recommended.

SQLite does not require Tcl to run, but a Tcl installation is required by the makefiles (including those for MSVC). SQLite contains a lot of generated code and Tcl is used to do much of that code generation."

Specifically, if I try to nmake while inside the newly created bld foler, the makefile is not found because that folder is currently empty. Perhaps there is a missing "cd .." prior to the first nmake line?

However, if I test that, it still does not build. The following is what results:

sqlite3.c
sqlite3.c(19711): error C2065: 'OPFLG_INITIALIZER': undeclared identifier
sqlite3.c(19711): error C2099: initializer is not a constant
sqlite3.c(76038): error C2065: 'OP_Init': undeclared identifier
sqlite3.c(76263): error C2065: 'OP_Goto': undeclared identifier
sqlite3.c(76270): error C2065: 'OP_String8': undeclared identifier
sqlite3.c(76292): error C2065: 'OP_Null': undeclared identifier
sqlite3.c(76292): error C2065: 'OP_String8': undeclared identifier
sqlite3.c(76294): error C2065: 'OP_Integer': undeclared identifier
sqlite3.c(76299): error C2065: 'OP_ResultRow': undeclared identifier
sqlite3.c(76384): error C2065: 'OP_Explain': undeclared identifier
sqlite3.c(76412): error C2065: 'OP_ParseSchema': undeclared identifier
sqlite3.c(76439): error C2065: 'OP_EndCoroutine': undeclared identifier
sqlite3.c(76739): error C2065: 'SQLITE_MX_JUMP_OPCODE': undeclared identifier
sqlite3.c(76743): error C2065: 'OP_Transaction': undeclared identifier
sqlite3.c(76747): error C2065: 'OP_AutoCommit': undeclared identifier
sqlite3.c(76748): error C2065: 'OP_Savepoint': undeclared identifier
sqlite3.c(76753): error C2065: 'OP_Checkpoint': undeclared identifier
sqlite3.c(76755): error C2065: 'OP_Vacuum': undeclared identifier
sqlite3.c(76756): error C2065: 'OP_JournalMode': undeclared identifier
sqlite3.c(76761): error C2065: 'OP_Next': undeclared identifier
sqlite3.c(76762): error C2065: 'OP_SorterNext': undeclared identifier
sqlite3.c(76771): error C2065: 'OP_Prev': undeclared identifier
sqlite3.c(76781): error C2065: 'OP_VUpdate': undeclared identifier
sqlite3.c(76785): error C2065: 'OP_VFilter': undeclared identifier
sqlite3.c(76743): error C2051: case expression not constant
sqlite3.c(76747): error C2051: case expression not constant
sqlite3.c(76748): error C2051: case expression not constant
sqlite3.c(76753): error C2051: case expression not constant
sqlite3.c(76755): error C2051: case expression not constant
sqlite3.c(76756): error C2051: case expression not constant
sqlite3.c(76761): error C2051: case expression not constant
sqlite3.c(76762): error C2051: case expression not constant
sqlite3.c(76771): error C2051: case expression not constant
sqlite3.c(76781): error C2051: case expression not constant
sqlite3.c(76785): error C2051: case expression not constant
sqlite3.c(76920): error C2065: 'OPFLG_JUMP': undeclared identifier
sqlite3.c(77109): error C2065: 'OP_Noop': undeclared identifier
sqlite3.c(77938): error C2065: 'OP_Explain': undeclared identifier
sqlite3.c(77939): error C2065: 'OP_Init': undeclared identifier
sqlite3.c(80901): error C2065: 'OP_PureFunc': undeclared identifier
sqlite3.c(84179): error C2065: 'OP_Goto': undeclared identifier
sqlite3.c(84221): error C2065: 'OP_Gosub': undeclared identifier
sqlite3.c(84242): error C2065: 'OP_Return': undeclared identifier
sqlite3.c(84261): error C2065: 'OP_InitCoroutine': undeclared identifier
sqlite3.c(84281): error C2065: 'OP_EndCoroutine': undeclared identifier
sqlite3.c(84307): error C2065: 'OP_Yield': undeclared identifier
sqlite3.c(84327): error C2065: 'OP_HaltIfNull': undeclared identifier
sqlite3.c(84366): error C2065: 'OP_Halt': undeclared identifier
sqlite3.c(84432): error C2065: 'OP_Integer': undeclared identifier
sqlite3.c(84444): error C2065: 'OP_Int64': undeclared identifier
sqlite3.c(84458): error C2065: 'OP_Real': undeclared identifier
sqlite3.c(84475): error C2065: 'OP_String8': undeclared identifier
sqlite3.c(84478): error C2065: 'OP_String': undeclared identifier
sqlite3.c(84518): error C2065: 'OP_String': undeclared identifier
sqlite3.c(84549): error C2065: 'OP_Null': undeclared identifier
sqlite3.c(84579): error C2065: 'OP_SoftNull': undeclared identifier
sqlite3.c(84592): error C2065: 'OP_Blob': undeclared identifier
sqlite3.c(84609): error C2065: 'OP_Variable': undeclared identifier
sqlite3.c(84636): error C2065: 'OP_Move': undeclared identifier
sqlite3.c(84676): error C2065: 'OP_Copy': undeclared identifier
sqlite3.c(84711): error C2065: 'OP_SCopy': undeclared identifier
sqlite3.c(84731): error C2065: 'OP_IntCopy': undeclared identifier
sqlite3.c(84748): error C2065: 'OP_ResultRow': undeclared identifier
sqlite3.c(84825): error C2065: 'OP_Concat': undeclared identifier
sqlite3.c(84922): error C2065: 'OP_Add': undeclared identifier
sqlite3.c(84923): error C2065: 'OP_Subtract': undeclared identifier
sqlite3.c(84924): error C2065: 'OP_Multiply': undeclared identifier
sqlite3.c(84925): error C2065: 'OP_Divide': undeclared identifier
sqlite3.c(84926): error C2065: 'OP_Remainder': undeclared identifier
sqlite3.c(84947): error C2065: 'OP_Add': undeclared identifier
sqlite3.c(84948): error C2065: 'OP_Subtract': undeclared identifier
sqlite3.c(84949): error C2065: 'OP_Multiply': undeclared identifier
sqlite3.c(84950): error C2065: 'OP_Divide': undeclared identifier
sqlite3.c(84973): error C2065: 'OP_Add': undeclared identifier
sqlite3.c(84974): error C2065: 'OP_Subtract': undeclared identifier
sqlite3.c(84975): error C2065: 'OP_Multiply': undeclared identifier
sqlite3.c(84976): error C2065: 'OP_Divide': undeclared identifier
sqlite3.c(85027): error C2065: 'OP_CollSeq': undeclared identifier
sqlite3.c(85065): error C2065: 'OP_BitAnd': undeclared identifier
sqlite3.c(85066): error C2065: 'OP_BitOr': undeclared identifier
sqlite3.c(85067): error C2065: 'OP_ShiftLeft': undeclared identifier
sqlite3.c(85068): error C2065: 'OP_ShiftRight': undeclared identifier
sqlite3.c(85084): error C2065: 'OP_BitAnd': undeclared identifier
sqlite3.c(85086): error C2065: 'OP_BitOr': undeclared identifier
sqlite3.c(85094): error C2065: 'OP_ShiftLeft': undeclared identifier
sqlite3.c(85099): error C2065: 'OP_ShiftLeft': undeclared identifier
sqlite3.c(85102): error C2065: 'OP_ShiftLeft': undeclared identifier
sqlite3.c(85125): error C2065: 'OP_AddImm': undeclared identifier
sqlite3.c(85140): error C2065: 'OP_MustBeInt': undeclared identifier
sqlite3.c(85169): error C2065: 'OP_RealAffinity': undeclared identifier
sqlite3.c(85196): error C2065: 'OP_Cast': undeclared identifier
sqlite3.c(85309): error C2065: 'OP_Eq': undeclared identifier
sqlite3.c(85310): error C2065: 'OP_Ne': undeclared identifier
sqlite3.c(85311): error C2065: 'OP_Lt': undeclared identifier
sqlite3.c(85312): error C2065: 'OP_Le': undeclared identifier
sqlite3.c(85313): error C2065: 'OP_Gt': undeclared identifier
sqlite3.c(85314): error C2065: 'OP_Ge': undeclared identifier
sqlite3.c(85420): error C2065: 'OP_Ne': undeclared identifier
sqlite3.c(85423): error C2065: 'OP_Ne': undeclared identifier
sqlite3.c(85426): error C2065: 'OP_Ne': undeclared identifier
sqlite3.c(85452): error C2065: 'OP_Eq': undeclared identifier
sqlite3.c(85452): fatal error C1003: error count exceeds 100; stopping compilation
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\bin\HostX86\x86\cl.EXE"' : return code '0x2'
Stop.

It seems that there is some missing step or error in the MSVC instructions here.
_______________________________________________
sqlite-users mailing list
[hidden email]
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
Reply | Threaded
Open this post in threaded view
|

Re: I am unable to build sqlite3 on windows. Possible errors in https://sqlite.org/src/doc/trunk/README.md

Keith Medcalf

D:\Source\SQLite3 contains the fossil checkout of trunk
D:\Source\Bld     is an empty directory

D:\Source\Bld>nmake -f ..\sqlite3\makefile.msc sqlite3.c TOP=..\sqlite3
... for the rest of the targets you want

In other words, you point to the makefile.msc wherever it may be found, and set TOP= to the directory which is the top of the distribution, and the results are scribbled into the current directory and below ...

---
The fact that there's a Highway to Hell but only a Stairway to Heaven says a lot about anticipated traffic volume.

>-----Original Message-----
>From: sqlite-users [mailto:sqlite-users-
>[hidden email]] On Behalf Of Craig Delancy
>Sent: Tuesday, 28 May, 2019 21:43
>To: [hidden email]
>Subject: [sqlite] I am unable to build sqlite3 on windows. Possible
>errors in https://sqlite.org/src/doc/trunk/README.md
>
>I am unable to successfully build SQLite3 following your
>instructions:
>
>"Using MSVC
>On Windows, all applicable build products can be compiled with MSVC.
>First open the command prompt window associated with the desired
>compiler version (e.g. "Developer Command Prompt for VS2013"). Next,
>use NMAKE with the provided "Makefile.msc" to build one of the
>supported targets.
>
>For example:
>
>    mkdir bld
>    cd bld
>    nmake /f Makefile.msc TOP=..\sqlite
>    nmake /f Makefile.msc sqlite3.c TOP=..\sqlite
>    nmake /f Makefile.msc sqlite3.dll TOP=..\sqlite
>    nmake /f Makefile.msc sqlite3.exe TOP=..\sqlite
>    nmake /f Makefile.msc test TOP=..\sqlite
>There are several build options that can be set via the NMAKE command
>line. For example, to build for WinRT, simply add "FOR_WINRT=1"
>argument to the "sqlite3.dll" command line above. When debugging into
>the SQLite code, adding the "DEBUG=1" argument to one of the above
>command lines is recommended.
>
>SQLite does not require Tcl to run, but a Tcl installation is
>required by the makefiles (including those for MSVC). SQLite contains
>a lot of generated code and Tcl is used to do much of that code
>generation."
>
>Specifically, if I try to nmake while inside the newly created bld
>foler, the makefile is not found because that folder is currently
>empty. Perhaps there is a missing "cd .." prior to the first nmake
>line?
>
>However, if I test that, it still does not build. The following is
>what results:
>
>sqlite3.c
>sqlite3.c(19711): error C2065: 'OPFLG_INITIALIZER': undeclared
>identifier
>sqlite3.c(19711): error C2099: initializer is not a constant
>sqlite3.c(76038): error C2065: 'OP_Init': undeclared identifier
>sqlite3.c(76263): error C2065: 'OP_Goto': undeclared identifier
>sqlite3.c(76270): error C2065: 'OP_String8': undeclared identifier
>sqlite3.c(76292): error C2065: 'OP_Null': undeclared identifier
>sqlite3.c(76292): error C2065: 'OP_String8': undeclared identifier
>sqlite3.c(76294): error C2065: 'OP_Integer': undeclared identifier
>sqlite3.c(76299): error C2065: 'OP_ResultRow': undeclared identifier
>sqlite3.c(76384): error C2065: 'OP_Explain': undeclared identifier
>sqlite3.c(76412): error C2065: 'OP_ParseSchema': undeclared
>identifier
>sqlite3.c(76439): error C2065: 'OP_EndCoroutine': undeclared
>identifier
>sqlite3.c(76739): error C2065: 'SQLITE_MX_JUMP_OPCODE': undeclared
>identifier
>sqlite3.c(76743): error C2065: 'OP_Transaction': undeclared
>identifier
>sqlite3.c(76747): error C2065: 'OP_AutoCommit': undeclared identifier
>sqlite3.c(76748): error C2065: 'OP_Savepoint': undeclared identifier
>sqlite3.c(76753): error C2065: 'OP_Checkpoint': undeclared identifier
>sqlite3.c(76755): error C2065: 'OP_Vacuum': undeclared identifier
>sqlite3.c(76756): error C2065: 'OP_JournalMode': undeclared
>identifier
>sqlite3.c(76761): error C2065: 'OP_Next': undeclared identifier
>sqlite3.c(76762): error C2065: 'OP_SorterNext': undeclared identifier
>sqlite3.c(76771): error C2065: 'OP_Prev': undeclared identifier
>sqlite3.c(76781): error C2065: 'OP_VUpdate': undeclared identifier
>sqlite3.c(76785): error C2065: 'OP_VFilter': undeclared identifier
>sqlite3.c(76743): error C2051: case expression not constant
>sqlite3.c(76747): error C2051: case expression not constant
>sqlite3.c(76748): error C2051: case expression not constant
>sqlite3.c(76753): error C2051: case expression not constant
>sqlite3.c(76755): error C2051: case expression not constant
>sqlite3.c(76756): error C2051: case expression not constant
>sqlite3.c(76761): error C2051: case expression not constant
>sqlite3.c(76762): error C2051: case expression not constant
>sqlite3.c(76771): error C2051: case expression not constant
>sqlite3.c(76781): error C2051: case expression not constant
>sqlite3.c(76785): error C2051: case expression not constant
>sqlite3.c(76920): error C2065: 'OPFLG_JUMP': undeclared identifier
>sqlite3.c(77109): error C2065: 'OP_Noop': undeclared identifier
>sqlite3.c(77938): error C2065: 'OP_Explain': undeclared identifier
>sqlite3.c(77939): error C2065: 'OP_Init': undeclared identifier
>sqlite3.c(80901): error C2065: 'OP_PureFunc': undeclared identifier
>sqlite3.c(84179): error C2065: 'OP_Goto': undeclared identifier
>sqlite3.c(84221): error C2065: 'OP_Gosub': undeclared identifier
>sqlite3.c(84242): error C2065: 'OP_Return': undeclared identifier
>sqlite3.c(84261): error C2065: 'OP_InitCoroutine': undeclared
>identifier
>sqlite3.c(84281): error C2065: 'OP_EndCoroutine': undeclared
>identifier
>sqlite3.c(84307): error C2065: 'OP_Yield': undeclared identifier
>sqlite3.c(84327): error C2065: 'OP_HaltIfNull': undeclared identifier
>sqlite3.c(84366): error C2065: 'OP_Halt': undeclared identifier
>sqlite3.c(84432): error C2065: 'OP_Integer': undeclared identifier
>sqlite3.c(84444): error C2065: 'OP_Int64': undeclared identifier
>sqlite3.c(84458): error C2065: 'OP_Real': undeclared identifier
>sqlite3.c(84475): error C2065: 'OP_String8': undeclared identifier
>sqlite3.c(84478): error C2065: 'OP_String': undeclared identifier
>sqlite3.c(84518): error C2065: 'OP_String': undeclared identifier
>sqlite3.c(84549): error C2065: 'OP_Null': undeclared identifier
>sqlite3.c(84579): error C2065: 'OP_SoftNull': undeclared identifier
>sqlite3.c(84592): error C2065: 'OP_Blob': undeclared identifier
>sqlite3.c(84609): error C2065: 'OP_Variable': undeclared identifier
>sqlite3.c(84636): error C2065: 'OP_Move': undeclared identifier
>sqlite3.c(84676): error C2065: 'OP_Copy': undeclared identifier
>sqlite3.c(84711): error C2065: 'OP_SCopy': undeclared identifier
>sqlite3.c(84731): error C2065: 'OP_IntCopy': undeclared identifier
>sqlite3.c(84748): error C2065: 'OP_ResultRow': undeclared identifier
>sqlite3.c(84825): error C2065: 'OP_Concat': undeclared identifier
>sqlite3.c(84922): error C2065: 'OP_Add': undeclared identifier
>sqlite3.c(84923): error C2065: 'OP_Subtract': undeclared identifier
>sqlite3.c(84924): error C2065: 'OP_Multiply': undeclared identifier
>sqlite3.c(84925): error C2065: 'OP_Divide': undeclared identifier
>sqlite3.c(84926): error C2065: 'OP_Remainder': undeclared identifier
>sqlite3.c(84947): error C2065: 'OP_Add': undeclared identifier
>sqlite3.c(84948): error C2065: 'OP_Subtract': undeclared identifier
>sqlite3.c(84949): error C2065: 'OP_Multiply': undeclared identifier
>sqlite3.c(84950): error C2065: 'OP_Divide': undeclared identifier
>sqlite3.c(84973): error C2065: 'OP_Add': undeclared identifier
>sqlite3.c(84974): error C2065: 'OP_Subtract': undeclared identifier
>sqlite3.c(84975): error C2065: 'OP_Multiply': undeclared identifier
>sqlite3.c(84976): error C2065: 'OP_Divide': undeclared identifier
>sqlite3.c(85027): error C2065: 'OP_CollSeq': undeclared identifier
>sqlite3.c(85065): error C2065: 'OP_BitAnd': undeclared identifier
>sqlite3.c(85066): error C2065: 'OP_BitOr': undeclared identifier
>sqlite3.c(85067): error C2065: 'OP_ShiftLeft': undeclared identifier
>sqlite3.c(85068): error C2065: 'OP_ShiftRight': undeclared identifier
>sqlite3.c(85084): error C2065: 'OP_BitAnd': undeclared identifier
>sqlite3.c(85086): error C2065: 'OP_BitOr': undeclared identifier
>sqlite3.c(85094): error C2065: 'OP_ShiftLeft': undeclared identifier
>sqlite3.c(85099): error C2065: 'OP_ShiftLeft': undeclared identifier
>sqlite3.c(85102): error C2065: 'OP_ShiftLeft': undeclared identifier
>sqlite3.c(85125): error C2065: 'OP_AddImm': undeclared identifier
>sqlite3.c(85140): error C2065: 'OP_MustBeInt': undeclared identifier
>sqlite3.c(85169): error C2065: 'OP_RealAffinity': undeclared
>identifier
>sqlite3.c(85196): error C2065: 'OP_Cast': undeclared identifier
>sqlite3.c(85309): error C2065: 'OP_Eq': undeclared identifier
>sqlite3.c(85310): error C2065: 'OP_Ne': undeclared identifier
>sqlite3.c(85311): error C2065: 'OP_Lt': undeclared identifier
>sqlite3.c(85312): error C2065: 'OP_Le': undeclared identifier
>sqlite3.c(85313): error C2065: 'OP_Gt': undeclared identifier
>sqlite3.c(85314): error C2065: 'OP_Ge': undeclared identifier
>sqlite3.c(85420): error C2065: 'OP_Ne': undeclared identifier
>sqlite3.c(85423): error C2065: 'OP_Ne': undeclared identifier
>sqlite3.c(85426): error C2065: 'OP_Ne': undeclared identifier
>sqlite3.c(85452): error C2065: 'OP_Eq': undeclared identifier
>sqlite3.c(85452): fatal error C1003: error count exceeds 100;
>stopping compilation
>NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual
>Studio\2017\Community\VC\Tools\MSVC\14.16.27023\bin\HostX86\x86\cl.EX
>E"' : return code '0x2'
>Stop.
>
>It seems that there is some missing step or error in the MSVC
>instructions here.
>_______________________________________________
>sqlite-users mailing list
>[hidden email]
>http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users



_______________________________________________
sqlite-users mailing list
[hidden email]
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users