Pergunta

I need to build System.Data.SQLite with SQLITE_ENABLE_FTS3_PARENTHESIS enabled, to get the 'Enhanced Query Syntax' (http://www.sqlite.org/fts3.html#section_3_1)

I downloaded the source code here:

I have tried following the build guide:

I am using the 2010 version because I need it in .net 4.0. I have opened the solution and rebuild it. I needed to unload the test projects first because they failed.

I have added the following in SQLite.Interop.2010.props 'SQLITE_COMMON_DEFINES' tag:

SQLITE_ENABLE_FTS3_PARENTHESIS=1;SQLITE_ENABLE_FTS4=1;

And to make sure it was defined I changed it in sqlite3.c (Properly not needed):

//#ifdef SQLITE_ENABLE_FTS3
  "ENABLE_FTS3",
//#endif
//#ifdef SQLITE_ENABLE_FTS3_PARENTHESIS
  "ENABLE_FTS3_PARENTHESIS",
//#endif
//#ifdef SQLITE_ENABLE_FTS4
  "ENABLE_FTS4",
//#endif

I rebuild it with release config, and it succeeded. But when I look in the folder:

sqlite-netFx-source-1.0.89.0\bin\2010\Release\bin

I do not find the SQLite.Interop.dll.

How do I build it and get the SQLite.Interop.dll??

Foi útil?

Solução

Hmm - I found the problem. I needed to build with ReleaseNativeOnly config, to get the SQLite.Interop.dll. The win32/x86 file is placed in sqlite-netFx-source-1.0.89.0\bin\2010\Win32\ReleaseNativeOnly.

To get the 64 bit version change platform for Interop project by select properties on the solution, and change platform to x64 - rebuild. The file is placed in sqlite-netFx-source-1.0.89.0\bin\2010\x64\ReleaseNativeOnly.

I copied them to my project folder in the x86 and x64 folders and it works.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top