Следующее: Как использовать FTS в SQLite с Monotouch для iOS - PullRequest
1 голос
/ 26 сентября 2011

В настоящее время я слежу за этим небольшим руководством по MonoTouch, SQLite и FTS3: Как использовать FTS в SQLite с Monotouch

Я успешно выполнил шаги 1 и 2. Без проблем я столкнулся с проблемой на шаге 3, потому что, когда я пытаюсь скомпилировать проект iPhone monotocuh, я получил эту ошибку:

Ошибка 1: mtouch завершился ошибкой со следующим сообщением: процесс завершен с код 1, команда: /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -arch i386 -gdwarf-2 -fobjc-legacy-dispatch -fobjc-abi-version = 2 -miphoneos-version-min = 4.2 -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk /var/folders/lu/luWKJVufEMO0MYd3+T3MJ++++TI/-Tmp-/tmp4f24ee90.tmp/main.x86.o -о /var/folders/lu/luWKJVufEMO0MYd3+T3MJ++++TI/-Tmp-/tmp4f24ee90.tmp/Iusuite -framework CFNetwork -framework AssetsLibrary -framework CoreTelephony -Framework EventKit -Фреймворк Фонд -Фреймворк CoreMotion GameKit -рамка MapKit -рамка MediaPlayer -рамка MessageUI - каркас OpenGLES - каркас магазина Store - каркас UIKit -framework AddressBookUI -framework iAd -framework SystemConfiguration -рамка Адресная книга -рамка AudioToolbox -рамка AVFoundation -каркасные работы QuartzCore -каркасные работы CoreFoundation -каркасные работы CoreGraphics -рамка CoreLocation -рамка ImageIO -рамка Безопасность -рамка CoreMedia -рамка CoreVideo -фреймворк ExternalAccessory - фреймворк EventKitUI - фреймворк QuickLook -Framework AudioToolbox -lz -u _mono_pmip -u _CreateZStream -u _CloseZStream -u _Flush -u _ReadZStream -u _WriteZStream -liconv -lmono-2.0 -lmonotouch -L / Разработчик / MonoTouch / SDKs / MonoTouch.iphonesimulator.sdk / usr / lib -u _catch_exception_raise -L / Users / пользователь / Разработка / MonoDevelop /.../ -lSQLite3_iOS -force_load /Users/user/Develop/MonoDevelop/.../Libraries/libSQLite3_iOS.a

ld: библиотека не найдена для -lSQLite3_iOS collect2: ld вернул 1 выход статус (1) (Iusuite.Application)

Это то, что я использую в качестве дополнительной команды для monotouch

-gcc_flags "-L $ {ProjectDir} -lSQLite3_iOS -force_load $ {ProjectDir} /Libraries/libSQLite3_iOS.a"

Любой намек или идея?

спасибо всем Francesco

1 Ответ

1 голос
/ 26 сентября 2011

Вы создаете свою собственную библиотеку sqlite, и вам необходимо убедиться, что вы используете эту библиотеку из своего проекта MonoTouch.

Дополнительные аргументы, которые вы предоставляете mtouch ask gcc , чтобы связать вашу новую библиотеку.Данный путь:

/ Users / francesco / Develop / MonoDevelop / AdMaiora / Applications / src / AdMaiora.Iusuite / Iusuite.App.Apple / Iusuite.Application / Libraries / libSQLite3_iOS.a

Существует ли этот файл в вашей системе?Если нет, то найдите файл и либо обновите ваши дополнительные аргументы, либо переместите библиотеку в указанную вами папку.

Примечание: редко указывайте -L $ {ProjectDir} , а затем укажите -force_load $ {ProjectDir} /Libraries/libSQLite3_iOS.a (обратите внимание на дополнительные / Libraries / в пути).

...