Hi all,
I've got a application which usess NHibernate to access SQLite. This works well on Windows, and I'm trying to get the application unit tests (Nunit) to run on Mac OS X 10.5.
The unit tests have been failing because the native library (libsqlite3.0.dylib) was not compiled with the SQLITE_ENABLE_COLUMN_METADATA directive. My nunit tests started working again once I:
- recompiled from source (
http://www.sqlite.org/sqlite-amalgamation-3.6.19.tar.gz) passing SQLITE_ENABLE_COLUMN_METADATA through CFLAGS to configure.
- overwriting the existing mono version of libsqlite3.0.dylib (/Library/Frameworks/Mono.framework/Versions/Current/lib/libsqlite3.0.dylib) with the resulting library.
I'm also using the ADO.NET provider for SQLite from
http://sourceforge.net/projects/sqlite-dotnet2/files/SQLite%20for%20ADO.NET%202.0/1.0.65.0/SQLite-1.0.65.0-managedonly-binaries.zip/download (
http://sqlite.phxsoftware.com/). This requires the native SQlite library to be in place though.
I've run my unit tests on the Mono 2.4 VMWare image which I downloaded from the Mono website, and the tests work as expected.
Questions:
1. Does mono ship a version of libsqlite3.0.dylib, and if so, can it be updated to support SQLITE_ENABLE_COLUMN_METADATA please?
2. What else could I do to resolve this problem? I don't want to provide a copy of the native library alongside my application, but would this be possible to do?
Thanks,
Andrew Bryson