MonoTouch Build: ld: símbolo (s) não encontrado (s) para arquitetura armv7
Eu tenho um projeto MonoTouch que constrói e roda bem no i386 / iOS Simulator. O projeto faz referência a uma biblioteca nativa (Obj-C), que converti em uma DLL MonoTouch usando o processo btouch conforme descrito em BindingSample da Xamarin:
Portanto, meu makefile constrói todas as três arquiteturas (i386, armv6 e armv7), combina as três saídas a uma biblioteca 'Universal' e, finalmente, usa o btouch para gerar uma DLL do MonoTouch.
Para ter certeza de que minha biblioteca universal contém todas as três arquiteturas, verifiquei comlipo -info
e, na verdade, contém i386, armv6 e armv7.
No entanto, quando estou construindo para implantação em um dispositivo iOS real, recebo os seguintes erros:
Undefined symbols for architecture armv7:
"_ABAddressBookCreate", referenced from:
-[ContactsTokenField setupSms] in libContactsTokenFieldViewUniversal.a(ContactsTokenField.o)
-[TITokenFieldView setupWithAddressType:prompt:] in libContactsTokenFieldViewUniversal.a(TITokenField.o)
"_ABAddressBookCopyArrayOfAllPeople", referenced from:
-[ContactsTokenField setupSms] in libContactsTokenFieldViewUniversal.a(ContactsTokenField.o)
-[TITokenFieldView setupWithAddressType:prompt:] in libContactsTokenFieldViewUniversal.a(TITokenField.o)
"_ABAddressBookGetPersonCount", referenced from:
-[ContactsTokenField setupSms] in libContactsTokenFieldViewUniversal.a(ContactsTokenField.o)
-[TITokenFieldView setupWithAddressType:prompt:] in libContactsTokenFieldViewUniversal.a(TITokenField.o)
"_ABRecordCopyValue", referenced from:
-[ContactsTokenField setupSms] in libContactsTokenFieldViewUniversal.a(ContactsTokenField.o)
-[TITokenFieldView setupWithAddressType:prompt:] in libContactsTokenFieldViewUniversal.a(TITokenField.o)
"_kABPersonFirstNameProperty", referenced from:
-[ContactsTokenField setupSms] in libContactsTokenFieldViewUniversal.a(ContactsTokenField.o)
-[TITokenFieldView setupWithAddressType:prompt:] in libContactsTokenFieldViewUniversal.a(TITokenField.o)
-[ContactsTokenField setupSms] in libContactsTokenFieldViewUniversal.a(ContactsTokenField.o)
-[TITokenFieldView setupWithAddressType:prompt:] in libContactsTokenFieldViewUniversal.a(TITokenField.o)
"_kABPersonLastNameProperty", referenced from:
-[ContactsTokenField setupSms] in libContactsTokenFieldViewUniversal.a(ContactsTokenField.o)
-[TITokenFieldView setupWithAddressType:prompt:] in libContactsTokenFieldViewUniversal.a(TITokenField.o)
-[ContactsTokenField setupSms] in libContactsTokenFieldViewUniversal.a(ContactsTokenField.o)
-[TITokenFieldView setupWithAddressType:prompt:] in libContactsTokenFieldViewUniversal.a(TITokenField.o)
"_ABMultiValueGetCount", referenced from:
-[TITokenFieldView setupWithAddressType:prompt:] in libContactsTokenFieldViewUniversal.a(TITokenField.o)
"_ABMultiValueCopyLabelAtIndex", referenced from:
-[TITokenFieldView setupWithAddressType:prompt:] in libContactsTokenFieldViewUniversal.a(TITokenField.o)
"_ABMultiValueCopyValueAtIndex", referenced from:
-[TITokenFieldView setupWithAddressType:prompt:] in libContactsTokenFieldViewUniversal.a(TITokenField.o)
"_kABPersonEmailProperty", referenced from:
-[TITokenFieldView setupWithAddressType:prompt:] in libContactsTokenFieldViewUniversal.a(TITokenField.o)
"_kABPersonPhoneProperty", referenced from:
-[TITokenFieldView setupWithAddressType:prompt:] in libContactsTokenFieldViewUniversal.a(TITokenField.o)
ld: symbol(s) not found for architecture armv7
collect2: ld returned 1 exit status
mtouch exited with code 1
O que estou fazendo de errado?