(Мой вопрос задавался здесь раньше, но без рабочих ответов, которые я вижу. Например, Рабочее пространство Xcode4 с проектом статической библиотеки и проектом приложения)
Я пытаюсь использовать библиотеку, предоставленную третьей стороной. Они предоставляют проект XCode, который создает файл libLibraryName.a. Они рекомендуют добавить проект в качестве подпроекта к моему собственному, а затем добавить файл продукта libLibraryName.a в набор библиотек, описанный в настройках моего проекта «Связать двоичный файл с библиотеками».
Библиотека собирается корректно: создается файл .a. Но проект показывает красный файл libLibraryName.a в группе Продукты. Я не могу заставить его стать черным. И родительский проект говорит, что не может найти LibraryName для связывания.
В качестве теста я создал новый проект статической библиотеки, используя шаблон статической библиотеки XCode 4. Этот проект демонстрирует такое же поведение — продукт никогда не отображается «черным», даже если файл .a создан. (Редактировать: он становится черным, если вы создаете для устройства, а не для симулятора).
Я знаю, что XCode 4 по умолчанию размещает промежуточные файлы и файлы продукта в общем месте. Я попробовал этот параметр и изменил его, чтобы поместить файлы продукта в папки, описанные в настройках сборки. Ни одна настройка не работает.
Люди также предложили сборку для устройства, а не для симулятора. Я пробовал это безрезультатно.
Что дает? Как заставить проект статической библиотеки распознавать, где он создал продукт, и впоследствии ссылаться на этот продукт в другом проекте?