我需要在启用 SQLITE_ENABLE_FTS3_PARENTHESIS 的情况下构建 System.Data.SQLite,以获得“增强的查询语法”(http://www.sqlite.org/fts3.html#section_3_1)
我下载了源代码here :
I have tried following the build guide:
我正在使用 2010 版本,因为我在 .net 4.0 中需要它。我已经打开了解决方案并重建了它。我需要先卸载测试项目,因为它们失败了。
我在 SQLite.Interop.2010.props 'SQLITE_COMMON_DEFINES' 标签中添加了以下内容:
SQLITE_ENABLE_FTS3_PARENTHESIS=1;SQLITE_ENABLE_FTS4=1;
为了确保它被定义,我在 sqlite3.c 中更改了它(不需要):
//#ifdef SQLITE_ENABLE_FTS3
"ENABLE_FTS3",
//#endif
//#ifdef SQLITE_ENABLE_FTS3_PARENTHESIS
"ENABLE_FTS3_PARENTHESIS",
//#endif
//#ifdef SQLITE_ENABLE_FTS4
"ENABLE_FTS4",
//#endif
我用发布配置重建它,它成功了。但是当我查看文件夹时:
sqlite-netFx-source-1.0.89.0\bin\2010\Release\bin
我没有找到 SQLite.Interop.dll。
如何构建它并获取 SQLite.Interop.dll?
最佳答案
嗯 - 我发现了问题。
我需要使用 ReleaseNativeOnly 配置进行构建,以获取 SQLite.Interop.dll。 win32/x86文件放在sqlite-netFx-source-1.0.89.0\bin\2010\Win32\ReleaseNativeOnly。
通过选择解决方案上的属性来获得 Interop 项目的 64 位版本更改平台,并将平台更改为 x64 - 重建。
该文件放在 sqlite-netFx-source-1.0.89.0\bin\2010\x64\ReleaseNativeOnly 中。
我将它们复制到 x86 和 x64 文件夹中的项目文件夹中,它可以工作。
关于.net - 使用增强的查询语法构建 System.Data.SQLite,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19701829/