Libiconv не ссылается на проект iOS
Я пытаюсь скомпилировать MailCore в приложение iOS, которое я создаю, и компоновщик продолжает жаловаться, что libiconv не связан. По крайней мере что я думаю, что он жалуется. Это то, что он выплевывает:
Undefined symbols for architecture i386:
"_iconv", referenced from:
_mail_iconv in libmailcore.a(charconv.o)
"_iconv_open", referenced from:
_charconv in libmailcore.a(charconv.o)
_charconv_buffer in libmailcore.a(charconv.o)
"_iconv_close", referenced from:
_charconv in libmailcore.a(charconv.o)
_charconv_buffer in libmailcore.a(charconv.o)
ld: symbol(s) not found for architecture i386
collect2: ld returned 1 exit status
(Это построение для симулятора. Построение для моего iPhone дает ту же ошибку, но s/i386/armv7/
).
Я попытался добавить libiconv.dylib
в ссылку "Связывание двоичных файлов с библиотеками", но он вообще не меняет ошибок.
Любая идея, что может быть неправильно здесь? Я пытался Google эту ошибку, но я не могу найти никакой информации о том, как установить ссылку в libiconv. Поскольку это часть SDK iOS, вы думаете, что мне не нужно ее самостоятельно компилировать?
Ответы
Ответ 1
В качестве дополнительного подтверждения того, что lib включен в вашу цель, выберите lib в списке файлов на левой панели Xcode (при условии, что вы добавили его в свой Target/Project, вы должны увидеть структуру, указанную в рамках фреймворка), и отобразите вид редактора помощника на правой панели (View → Assistant Editor → Show Assistant Editor).
Затем, когда соответствующий lib выбран слева, вы увидите "Целевое членство" для этой библиотеки, показанной в виде списка флажков справа.
Вы должны увидеть список целевых объектов приложения, и флажок должен быть установлен для этой цели.
Вы можете попытаться снять флажок и перепроверять его, чтобы подтолкнуть его в свой проект?
Ответ 2
Вам нужно добавить libiconv.dylib через "add framework". SRC доступный из этого обсуждения.