将SQLite FTS3 extension构建为Windows DLL的推荐方法是什么?
我遇到以下问题:
fts3_tokenizer.obj:错误LNK2005:sqlite3_api已在fts3.obj中定义
SQLITE_EXTENSION_INIT1
和fts3_tokenizer.c
都使用了宏fts3.c
。它创建了一个名为sqlite3_api
的全局变量,由于这是在两个地方完成的,因此有两个同名的全局变量。因此问题。
注意:虽然FTS可以编译成SQLite,但我想要一个DLL,所以我可以动态地将扩展加载到我有一个没有全文搜索的预编译SQLite的环境中。
答案 0 :(得分:2)
主要说明: http://eli.thegreenplace.net/2009/09/23/compiling-sqlite-on-windows/
但是使用这些预处理器定义:
SQLITE_ENABLE_COLUMN_METADATA
SQLITE_ENABLE_FTS3
SQLITE_ENABLE_FTS3_PARENTHESIS
SQLITE_ENABLE_RTREE
忽略int / i64和float / double警告