У меня есть проект iPhone SDK, который должен создать статическую библиотеку для симулятора и процессора ARM, а затем объединить их в универсальную библиотеку.
Раньше я использовал iPhone SDK 3+ и выполнил это, создав отдельную цель для каждого, один симулятор и один ARM, а затем создал третью цель, которая объединяет их с помощью сценария оболочки. Цели развертывания / параметры сборки для каждой из составляющих целей установлены на соответствующие архитектуры и т. Д. Кроме того, iPhone SDK 3+ позволил мне выбрать «Базовый SDK» в раскрывающемся меню в верхнем левом углу основного XCode. окно.
Все работало отлично - тогда я обновился до SDK 4.
Теперь в выпадающем меню в левом верхнем углу нет списка «Базовый SDK». Кроме того, компилятор, похоже, полностью игнорирует целевые параметры развертывания. Даже если для одной из целей установлено «Устройство iPhone», а для другой - «Симулятор iPhone», они все равно строятся так, как указано в раскрывающемся меню.
В случае, если я не был достаточно ясен, вот оскорбительное оскорбляющее вышеупомянутое меню, которое мы все знаем и любим:
Еще раз, в SDK 3 все работало отлично. Теперь в SDK 4, если установлено «Устройство», я получаю две библиотеки, созданные для ARM. Если он установлен на симулятор, я получаю две библиотеки, созданные для симулятора.
Кто-нибудь знает обходной путь для этой буллы?
Большое спасибо.
ОБНОВЛЕНИЕ: инструмент командной строки "xcodebuild" все еще работает, то есть он будет строить правильную архитектуру в соответствии с параметрами развертывания каждой цели.
Таким образом, вместо того, чтобы использовать графический интерфейс XCode для сборки, я могу использовать скрипт оболочки, который вызывает xcodebuild следующим образом:
xcodebuild -target device-target -configuration Debug
xcodebuild -target sim-target -configuration Debug
Было бы неплохо найти реальное решение, но сейчас оно выполнит свою работу.