将SQLite FTS扩展构建为DLL的正确方法是什么?

时间:2010-10-13 20:54:16

标签: c windows sqlite dll full-text-search

将SQLite FTS3 extension构建为Windows DLL的推荐方法是什么?

我遇到以下问题:

  

fts3_tokenizer.obj:错误LNK2005:sqlite3_api已在fts3.obj中定义

SQLITE_EXTENSION_INIT1fts3_tokenizer.c都使用了宏fts3.c。它创建了一个名为sqlite3_api的全局变量,由于这是在两个地方完成的,因此有两个同名的全局变量。因此问题。

注意:虽然FTS可以编译成SQLite,但我想要一个DLL,所以我可以动态地将扩展加载到我有一个没有全文搜索的预编译SQLite的环境中。

1 个答案:

答案 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警告