sqlite 错误:编译错误 C1017 SQLITE_ENABLE_COLUMN_METADATA

Mar*_*o M 3 c++ sqlite compiler-errors

我使用VS2013编译它。

升级到最新版本的 sqlite 后,我在编译时收到此错误

sqlite3.c(14126): fatal error C1017: invalid integer constant expression
Run Code Online (Sandbox Code Playgroud)

我用 #define SQLITE_ENABLE_COLUMN_METADATA 编译 sqlite

14126行有这个

#if SQLITE_ENABLE_COLUMN_METADATA
  "ENABLE_COLUMN_METADATA",
#endif
Run Code Online (Sandbox Code Playgroud)

从 2014 年回到旧版本的 sqlite,它被编译没有任何错误。几个月前我也尝试过 sqlite 3.8.10,但仍然出现错误。

更新:该错误是在 sqlite 3.8.8 版中引入的(3.8.7.2 编译得很好)。

Cod*_*ard 5

因为它是#if而不是#ifdef你需要做
#define SQLITE_ENABLE_COLUMN_METADATA 1而不是
#define SQLITE_ENABLE_COLUMN_METADATA