Каков рекомендуемый способ создания расширения SQLite FTS3 в виде Windows DLL?
У меня возникла следующая проблема:
fts3_tokenizer.obj: ошибка LNK2005: sqlite3_api уже определен в fts3.obj
Макрос SQLITE_EXTENSION_INIT1
используется как в fts3_tokenizer.c
, так и в fts3.c
. Он создает глобальную переменную с именем sqlite3_api
, и, поскольку это делается в двух местах, есть две глобальные переменные с одинаковыми именами. Отсюда и проблема.
Примечание. Несмотря на то, что FTS можно скомпилировать в SQLite, мне нужна библиотека DLL, чтобы я мог динамически загружать расширение в среды, где у меня есть предварительно скомпилированный SQLite, в котором нет полнотекстового поиска.