Hello, I'm trying to build sqlite from source (sqlite-src) for Fedora. In the latest version (3.8.10.1), I encountered two issues that prevents me from building it:
1) The compilation fails on file sqlite3_analyzer.c, with error sqlite3_analyzer.c:14131:30: error: #if with no expression #if SQLITE_ENABLE_DBSTAT_VTAB I found out that this is due to the way the macro is defined on the very top of the file: `#define SQLITE_ENABLE_DBSTAT_VTAB`. As the macro evaluates to nothing, the #if statement is invalid. Also, this way effectively prevents me from using the macro as compile flag, because this way overwrite any definition of this macro in compile flags. Origin of the line is in the Makefile (Makefile.in), and it is added during the sqlite3_analyzer.c creation in said Makefile. 2) When I "fix" the previous error, I'm getting assertion failure during the test suite run. The way I fixed the previous error: #ifndef SQLITE_ENABLE_DBSTAT_VTAB #define SQLITE_ENABLE_DBSTAT_VTAB 0 #endif Then I add the `-DSQLITE_ENABLE_DBSTAT_VTAB=1` flag to the CFLAGS, and the compilation sucessfully finishes. However, the testsuite run fails with the following error: shell1-5.0...testfixture: /builddir/build/BUILD/tcl8.6.3/generic/tclIO.c:5815: DoReadChars: Assertion `!((statePtr)->flags & ((1<<9))) || ((statePtr)->flags & ((1<<10))) || Tcl_InputBuffered((Tcl_Cha nnel)chanPtr) == 0' failed. The testsuite error does not occur in the 3.9.* version. Best regards, Jan -- Jan Stanek - Red Hat Associate Developer Engineer - Databases Team