Получение более старого поведения SDKROOT в XCode - PullRequest
3 голосов
/ 19 февраля 2010

Я пытаюсь настроить библиотеку для симулятора или устройства, и везде, где я вижу, объясняется, что SDKROOT должен расширяться до / Developer / Platform / <> / SDKs / <> /, где <> заполнен вашим проектом настройки.

Многие ссылки в Интернете объясняют, что SDKROOT расширится до пути, но более новые версии XCode, SDKROOT расширяются до «iphoneos2.2.1» - что не так полезно (для этой задачи).

Достаточно ясно, если вы посмотрите на документацию яблок, поведение изменилось:

http://developer.apple.com/mac/library/DOCUMENTATION/DeveloperTools/Reference/XcodeBuildSettingRef/9-Revision-3.1/history.html

Я подтвердил изменение, посмотрев более старую документацию на моем Mac.

Есть мысли о том, как добиться аналогичной функциональности в последних сборках XCode? Моя конечная цель - связать статическую библиотеку независимыми от платформы способами. Заголовочные файлы различаются на разных платформах, поэтому создание статичной библиотеки не решает проблему.

Ответы [ 2 ]

4 голосов
/ 19 февраля 2010

В Xcode 3.2.1, похоже, SDK_DIR содержит путь, который был в SDKROOT.

0 голосов
/ 30 июля 2011

Я не могу найти документацию, в которой упоминается SDK_DIR. Поведение SDKROOT явно изменилось в какой-то момент. Раньше он расширялся до полного пути, а теперь просто расширяется до краткой формы, такой как «iphoneos4.3». Я не могу найти ничего, что документирует это изменение поведения, хотя приведенная выше ссылка не работает.

При экспериментировании SDKROOT является правильным выбором. Похоже, он расширяется до краткой формы «iphoneos4.3», но в действительности он расширяется до полного пути во время сборки. Я думаю, что XCode просто сокращает его для целей отображения, что сбивает с толку.

...