Я работаю над проектом iOS, которому требуется FTS для БД SQLite.
Я следовал инструкциям, найденным в Интернете, относительно создания пользовательской версии SQLite вместе с пользовательской функциейупорядочить результаты FTS по релевантности и построить все это с помощью XCode, установив новую цель статической библиотеки и получив libSQLite.a в качестве выходных данных.
На iOS все работает нормально!FTS, порядок релевантности и т. Д.
Теперь нужно перенести все на MonoTouch.Я следовал инструкциям по использованию libSQLite.a, созданного из XCode в проекте MonoDevelop, по адресу Как использовать FTS в SQLite с Monotouch для iOS
В частности, я написалОболочка SQLite в C # для библиотеки благодаря учебнику, найденному на http://www.switchonthecode.com/tutorials/csharp-tutorial-writing-a-dotnet-wrapper-for-sqlite
Я также изменил ссылки на .dll с помощью __Internal, как сказал вопрос SO, но все же я не могу понять, почему это не такt работа.
Приложение запускается и сразу завершает работу, даже если я не вызываю какой-либо метод класса SQLite.
Код просто останавливается в window.MakeKeyAndVisible ();
Это ошибка:
Stacktrace:
at (управляемая оболочкой) System.Reflection.Assembly.GetTypes (System.Reflection.Assembly, bool) в System.Reflection.Assembly.GetTypes () [0x00000] в /Developer/MonoTouch/Source/mono/mcs/class/corlib/System.Reflection/Assembly.cs:348 в MonoTouch.ObjCRuntime.Runtime.RegisterAssembly (System.Reflection.Assembly)[0x0004b] в/Users/plasma/Source/iphone/monotouch/ObjCRuntime/Runtime.cs:82 at (вызов времени выполнения оболочки) .runtime_invoke_void_object (object, intptr, intptr, intptr)
Собственная трассировка стека:
0 SQLiteFTSTest 0x000d1965 mono_handle_native_sigsegv + 343
1 SQLiteFTSTest 0x0000ffb4 mono_sigsegv_signal_handler + 322
2 libSystem.B.dylib 0x980e845b _sigtramp + 43
3 ??? 0xffffffff 0x0 + 4294967295
4 ??? 0x077586fe 0x0 + 125142782
5 ??? 0x077586c1 0x0 + 125142721Error connecting stdout and stderr (127.0.0.1:10001)
6 ??? 0x0774df29 0x0 + 125099817
7 ??? 0x0774e055 0x0 + 125100117
8 SQLiteFTSTest 0x0000fd6f mono_jit_runtime_invoke + 1332
9 SQLiteFTSTest 0x001ee239 mono_runtime_invoke + 137
10 SQLiteFTSTest 0x0029bc55 monotouch_register + 90
11 SQLiteFTSTest 0x002a24d7 main + 3562
12 SQLiteFTSTest 0x000030c9 _start + 208
13 SQLiteFTSTest 0x00002ff8 start + 40
14 ??? 0x00000002 0x0 + 2
Отладочная информация из gdb:
/ tmp / mono-gdb-commands.A3ljfK: 1: Ошибка в исходном командном файле: невозможно отладить себя
Что мне делать?