Добавление старого SDK в Xcode 4 - PullRequest
2 голосов
/ 28 июля 2011

Я прочитал, что вы можете иметь несколько SDK в Xcode 4, установленных в каталоге Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs.Что не было ясно, так это то, как вы можете получить эти разные SDK.По крайней мере, я бы хотел протестировать iOS 4.0 вместо последней iOS 4.3.Хотя было бы здорово протестировать и на 3.2.Мой Xcode 4 установлен только с последним 4.3 SDK в этом каталоге.Есть ли удобный способ их добавления?

Ответы [ 3 ]

3 голосов
/ 26 августа 2011

Когда вы устанавливаете Xcode 4.0, ваша предыдущая версия переименовывается во что-то вроде «Developer-3.2.5».Если у вас все еще установлена ​​предыдущая версия Xcode, вы можете просто сделать это:

cd /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs
sudo ln -s /Developer-3.2.5/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.0.sdk .
sudo ln -s /Developer-3.2.5/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.1.sdk .

Если у вас не установлена ​​предыдущая версия, удалите Xcode 4.x, а затем установите Xcode 3.2 и начните постепенно стам.После установки Xcode 4.x ваша предыдущая версия Xcode 3.x будет переименована на диск, после чего вы сможете использовать символьные ссылки 4.0 / 4.1 SDK под Xcode 4.0.Перезапуск Xcode 4.0 даст вам 4.0 и 4.1 в выпадающем списке опций.

1 голос
/ 13 июня 2012

Загрузки XCode, доступные с http://developer.apple.com/downloads, содержат пакеты, начиная с версии 4.0. Я недавно столкнулся с этой же проблемой и смог определить, что:

  • Начиная с версии 4.1 (возможно, раньше - все еще ожидая загрузки для XCode 3.2.3 и SDK 4.0.1), пакеты содержат подпакеты, названные совершенно одинаково
  • Несмотря на внутреннее имя пакета, похоже, что актуальный iOS SDK будет включен для версии, упомянутой в основном файле DMG. Например, xcode_3.2.5_and_ios_sdk_4.2_final.dmg может содержать пакеты SDK для нескольких версий, но iOS SDK полностью включен только для 4.2.
  • Мне удалось заполучить 4.1, 4.2 и 4.3, загрузив установщики DMG XCode, просмотрев содержимое пакета и запустив соответствующий установщик iPhoneSDK4_X.pkg.
  • После установки мне пришлось скопировать материал, который он уронил из /Platforms/iPhoneOS.platform/, в новое место по адресу /Developer/Platforms/iPhoneOS.platform.
  • В дополнение к SDK для iPhoneOS я также позаботился о том, чтобы на платформе iPhoneSimulator.platform был этот материал. Мне кажется, что XCode отвечает за установку большинства устройств для поддержки отладки.

Надеюсь, это поможет! Сложно было понять, что имена пакетов могут быть одинаковыми, но содержимое может отличаться. Кажется, что каждая загрузка включает только один полный SDK.

Как только я это сделал, я смог изменить свой базовый SDK в XCode и выполнить сборку с целевым SDK.

Ура!

PS: Как только вы добавите дополнительные SDK, вы, скорее всего, увидите, что в списке ваших схем появятся дополнительные пункты назначения с одинаковыми именами устройств для физических устройств. Это сводило меня с ума, поскольку каждый из них связан с одним из SDK, но версия SDK не указана в списке. Неплохо, когда вы выясните, какой именно (обычно это признак неудачной сборки), поскольку он нацелен на другой SDK, в зависимости от того, какое физическое устройство выбрано. Больше информации на этот пост: дублирующая схема устройства в xcode 4

1 голос
/ 28 июля 2011

Нет, не удобный способ, к сожалению. Самый простой способ - установить более раннюю версию, а затем постепенно, если необходимо, обновить ее до последней версии.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...