Можно ли получить SDK iOS 5.1 для Xcode 4.2 на Snow Leopard?


139

У меня еще есть Снежный Барс. У меня есть Xcode 4.2 для разработки под iOS. Сегодня утром я обновил свой iPhone и iPad до iOS 5.1.

Но Xcode 4.2 не обнаруживает мое устройство для тестирования. Мне не удалось найти образ SDK iOS 5.1 на сайте разработчиков Apple для Xcode 4.2.

Я не хочу сейчас обновляться до Lion, чтобы получить XCode 4.3.

Смогу ли я теперь использовать Xcode 4.2 (на Snow Leopard) для разработки под iOS?

Ответы:


213

Чтобы заставить Xcode 4.2 на Snow Leopard запускать код на устройстве под управлением iOS 5.1, вы можете сделать это:

  1. Если у вас есть другой Mac с Lion и Xcode 4.3.1, вы можете скопировать файлы из:

    /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport/5.1 (9B176)

  2. Поместите скопированные файлы в эквивалентное место на вашем Snow Leopard Mac: возможно,

    /Developer/Platforms/iPhoneOS.platform/DeviceSupport

  3. Аналогичным образом скопируйте файлы SDK iOS 5.1, находящиеся в этом каталоге:

    /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.1.sdk

  4. Также скопируйте файл version.plist с машины Lion в папку iPhoneOS.platform на машину Snow Leopard.

  5. Перезапустите Xcode на машине Snow Leopard и повторно подключите устройства, и это кажется достаточно счастливым.

Если у вас нет доступа к машине с Lion и Xcode 4.3.1:

  1. Вы можете получить файлы, 4.3.1 DMGкоторые можно загрузить с Apple здесь : Загрузки для разработчиков Apple .

  2. Установите DMG, отобразите содержимое пакета на значке Xcode и перейдите к

    /Volumes/Xcode/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport

  3. Следуйте инструкциям выше.

Возможно, вам будет удобнее использовать собственный dittoметод Apple ( sudo ditto src dest) в окне терминала для копирования папок.

Обратите внимание, что этот хак также будет работать с последней версией SDK для iOS 6.


3
Сегодня я обновил свою систему до Lion. Спасибо за взлом.
— jpsasi 09

Большое спасибо :) Сработал у меня идеально. По крайней мере, я смогу еще какое-то время развиваться с помощью sl.
— OnTheFly 09

14
Я исправил указанную выше проблему, скопировав файлы в /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.1.sdk. Спасибо за это, теперь я могу отложить замену моего старого Mac еще как минимум на пару месяцев.
— Дэн Дайер

6
@natbro - Я все еще вижу штраф 4.3.1 dmg на developer.apple.com/downloads/index.action# и в настоящее время загружаю его.
— SubG

1
XCode 4.3.3 также содержит его и отлично работает. Большое спасибо за это
— Крым

14

Вы должны получить Lion, iOS 5.1 SDK предназначен только для Xcode 4.3.1, который доступен только для Lion.

... и ваш Xcode не сможет быть собран на вашем устройстве, если вы уже обновили его до 5.1, потому что его не будет в этой версии утвержденных Xcode SDK


14

Я сейчас над этим работаю. У меня такая же проблема.

ОСНОВНЫЕ ПРОБЛЕМЫ здесь заключаются в следующем:

1) Apple никогда не предоставляла диалоговое окно с предупреждением о том, что это может помешать развитию людей под Snow Leopard.

2) Нет простого способа отменить это.

3) Этого не должно происходить при обновлении промежуточного выпуска.

Я пытался установить предыдущий ipsw от 5.0.1 для своего IPod Touch 4-го поколения отсюда: где скачать ссылки для восстановления прошивки ipod touch Он не устанавливается.

Я скачал Lion Xcode 4.3.1 отсюда (сначала войдите как разработчик) Lion Xcode 4.3.1

И запустите несколько скриптов с форумов разработчиков здесь:

sudo cp -R /Volumes/Xcode/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.1.sdk /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/
sudo cp -R /Volumes/Xcode/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.1.sdk /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/

sudo cp -R /Volumes/Xcode/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport/5.1\ \(9B176\) /Developer/Platforms/iPhoneOS.platform/DeviceSupport/
cd /Developer/Platforms/iPhoneOS.platform/DeviceSupport/

sudo rm -f ./Latest

sudo ln -s ./5.1\ \(9B176\) ./Latest

Размонтировал Lion DMG и перезапустил Xcode. Это позволило мне протестировать 5.1 в симуляторе, но сломало каждую сборку для каждого устройства с помощью SIGABRT или ошибки связи.

Я иду в магазин Apple, чтобы они восстановили мое устройство. Если я получу дополнительную информацию, я дам вам знать. Это был ОЧЕНЬ ДОРОГОЙ и ОЧЕНЬ НЕПРИЯТНЫЙ сюрприз.


3
Я полностью с тобой согласен. Поведение Apple в этом отношении безответственно. Он говорит вам: им просто все равно.
— EdH

3
Я любил Apple до того, как стал одним из бедных ублюдков, которым приходилось разрабатывать на платформе iOS.
— Alex Zavatone

8

Добавляя решение Ричардса выше, я обнаружил, что если вы также скопируете из XCode 4.3.1 dmg ...

изменить: обновлен до правильного пути в dmg

/Volumes/Xcode/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Develope‌ r / SDKs / iPhoneOS5.1.sdk ~~ (все дерево каталогов)

к

/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/

Отладчик XCode запустится правильно (без журнала ошибок и дампов)

ie:
===============================================================================
warning: Unable to read symbols from "dyld" (prefix __dyld_) (not yet mapped into memory).
warning: Unable to read symbols from "SystemConfiguration" (not yet mapped into memory).
warning: Unable to read symbols for /Developer/Platforms/iPhoneOS.platform/DeviceSupport/5.1 (9B176)/Symbols/System/Library/Frameworks/MessageUI.framework/MessageUI (file not found).
warning: No copy of dyld found locally, reading from memory on remote device.  This may slow down the debug session.
warning: No copy of <No file name> found locally, reading from memory on remote device.  This may slow down the debug session.
warning: No copy of <No file name> found locally, reading from memory on remote device.  This may slow down the debug session.
warning: Unable to read symbols for /Developer/Platforms/iPhoneOS.platform/DeviceSupport/5.1 (9B176)/Symbols/System/Library/Frameworks/SystemConfiguration.framework/SystemConfiguration (file not found).
warning: No copy of SystemConfiguration.framework/SystemConfiguration found locally, reading from memory on remote device.  This may slow down the debug session.
warning: Unable to read symbols for /Developer/Platforms/iPhoneOS.platform/DeviceSupport/5.1 (9B176)/Symbols/System/Library/Frameworks/MessageUI.framework/MessageUI (file not found).
warning: No copy of MessageUI.framework/MessageUI found locally, reading from memory on remote device.  This may slow down the debug session.
warning: Unable to read symbols for /Developer/Platforms/iPhoneOS.platform/DeviceSupport/5.1 (9B176)/Symbols/System/Library/Frameworks/AudioToolbox.framework/AudioToolbox (file not found).
warning: No copy of AudioToolbox.framework/AudioToolbox found locally, reading from memory on remote device.  This may slow down the debug session.
warning: Unable to read symbols for /Developer/Platforms/iPhoneOS.platform/DeviceSupport/5.1 (9B176)/Symbols/System/Library/Frameworks/iAd.framework/iAd (file not found).
warning: No copy of iAd.framework/iAd found locally, reading from memory on remote device.  This may slow down the debug session.
warning: Unable to read symbols for /Developer/Platforms/iPhoneOS.platform/DeviceSupport/5.1 (9B176)/Symbols/System/Library/PrivateFrameworks/SpringBoardServices.framework/SpringBoardServices (file not found).
warning: No copy of SpringBoardServices.framework/SpringBoardServices found locally, reading from memory on remote device.  This may slow down the debug session.
warning: Unable to read symbols for /Developer/Platforms/iPhoneOS.platform/DeviceSupport/5.1 (9B176)/Symbols/System/Library/PrivateFrameworks/FTClientServices.framework/FTClientServices (file not found).
warning: No copy of FTClientServices.framework/FTClientServices found locally, reading from memory on remote device.  This may slow down the debug session.
===============================================================================

Я думаю, что путь, который вы имеете в виду: /Volumes/Xcode/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs (что немного глубже, чем предлагает ваш пост - сложная иерархия, с которой Apple столкнулась, не это?)
— Ричард Гроувс,

действительно, вы правы. обновление сообщения, чтобы отразить ваш правильный путь.
— cheers

7

Здесь есть ответ, который также предоставляет копию симулятора v 5.1. Никаких ручных операций. Просто откройте Терминал, скопируйте и вставьте предоставленные команды.

http://www.iphonedevsdk.com/forum/iphone-sdk-development/100229-snow-leopard-sdk-5-1-a.html


Я выполнил инструкции Ричарда Гроувса и @dklt. Это не работает. Но я запустил скрипты, приведенные в этой ссылке, и это сработало как шарм
— Вайшнави Найду

«Эта веб-страница по адресу www.iphonedevsdk.com была объявлена ​​страницей атаки и была заблокирована на основании ваших настроек безопасности». - Я был бы очень осторожен :)
— Роэль Ван де Паар

Сообщается обо всем сайте iphonedevsdk.com , а не только об этой странице.
— prossel

5

если вы хотите также добавить симулятор iphone 5.1 в свой xcode, скопируйте

/Volumes/Xcode/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.1.sdk

весь каталог по следующему пути =>

/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/

после того, как вы также сможете использовать iPhone Simulator 5.1 для отладки вашего приложения.


1
Когда я делаю это @ hchouhan02, я получаю следующие ошибки: Ошибка компилятора XIB Interface Builder: «Ошибка команды / разработчика / usr / bin / ibtool с кодом выхода 255» и Без категории: «Задача сборки завершилась неудачно без создания сообщений об ошибках».
— JRoss 07

Попробуйте это => выйти из xcode => открыть xcode => очистить проект после попытки создания проекта.
— hchouhan02 09

5

Вы можете использовать приложения, скомпилированные для 5.0, на вашем устройстве 5.1 или 5.1.1, скомпилировав их и вручную перетащив файл .app в iTunes. Пробовал сегодня на 10.6.8 и XCode 4.2.


Это сработало для меня сегодня. Я на SL с xcode 4.2. [Mac OS X 10.6.8 (10K549). Xcode 4.2 (4C199). iPhone OS SDK 5.0: (9A334).]
— Мартин Якубик 08

Вы можете найти файл .app в ~ / Library / Developer / Xcode / DerivedData / {app name} / Build / Products / Deployment / (спасибо stackoverflow.com/a/9673810/1208218 )
— Роэль Ван де Паар,

И еще немного информации о том, как именно все это запустить: stackoverflow.com/a/11460561/1208218
— Роэль Ван де Паар,

4

Загрузите прошивку iOS 5.0.1 вашего устройства по этой ссылке: http://www.iphonefirmware.com/firmwares-download .

И сделайте ручное восстановление в iTunes.

Я сделал это сегодня (8 марта) на своем iPad 2, и он работает, Apple, похоже, все еще подписывает эту версию iOS. Думаю, ненадолго, так что делайте это быстро.


1
10 марта: не сработало. Получено сообщение о том, что версия программного обеспечения не поддерживается для моего устройства, iPod Touch 4G.
— Шеймус

Apple перестала подписывать его с прошлых
— выходных

3

Невозможно использовать устройство 5.1 на xcode 4.2, поскольку вы не хотите обновляться, вы можете использовать органайзер, выбрать свое устройство и использовать функцию восстановления. Вы можете найти в Google версию 5.0.1 и использовать ее.

(хотя обновление до льва очень дешевое)

РЕДАКТИРОВАТЬ: Кажется, это возможно, прокрутите вверх, чтобы найти ответ с наибольшим количеством голосов.


Поскольку Mountain lion будет выпущен через пару месяцев, я не хочу сейчас переходить на Lion, предполагая, что я смогу перейти на Mountain Lion из Snow Leopard. Думаю, мне нужно найти способ восстановить iOS 5.0.1 на моем устройстве. Спасибо
— jpsasi 08

Добро пожаловать. Это не должно быть так сложно восстановить. Как я уже говорил, xCode предоставляет функцию восстановления (находится в окне меню органайзера-> органайзер-> устройства-> RestoreIphone). Кстати, не знаю, можете ли вы пойти прямо к горному льву, например, вы должны пройти через снежного леопарда, чтобы добраться до льва от леопарда.
— Почи

Очевидно, нет необходимости сначала переходить на Lion, и вы можете сразу перейти от Snow Leopard к Mountain Lion
— Роэль Ван де Паар

3

Я использую Mac OS X 10.6.8 и Xcode 4.2, а также обновил свой iPhone до iOS 5.1. Вчера мне нужно было срочно загрузить тестовую версию на устройство, но у меня не было времени установить Lion и Xcode 4.3.

Я использую TestFlight (www.testflightapp.com) для бета-тестирования. Я создал архив .ipa из Xcode 4.2 и смог установить его на свой iPhone с обновленной iOS 5.1 через TestFlight.

Я знаю, что это не идеальное решение, но вчера оно помогло мне выбраться из затруднительного положения, не прибегая к хакам.

ps Я никак не связан с TestFlight.


2

Xcode 4.2, похоже, больше не доступен на developer.apple.com для пользователей снежного барса :( также для зарегистрированных платных разработчиков iOS, таких как я ...

Похоже, на данный момент нет легального способа получить это ...


2

Вы также должны добавить псевдоним Symbols ... например, /Developer/Platforms/iPhoneOS.platform/DeviceSupport/6.0 (10A403)вы должны добавить псевдоним Symbols, который указывает, /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.0.sdkчтобы xcode 4.2 мог обнаружить ваше устройство ios6 (проверено на Mac mini 1.5 Intel Core Solo со снежным барсом). Ура


В моем случае Symbolsпсевдоним уже был там после того, как я скопировал DeviceSupport/6.0 (10A403)папку из образа диска Xcode 4.5.
— herzbube

1

Я думаю, что вы можете протестировать устройство ios 5.1 в Snow Leopard, как описано в сообщениях выше. Но всегда безопасно перейти на Lion и использовать официальный выпуск sdk. Потому что мы не можем предсказать, какая проблема может произойти, если мы сделаем некоторые «трюки» на нашей машине, чтобы это произошло, и это может произойти в самое нежелательное для вас время (например, при отправке в магазин приложений). :)


1

На момент написания этой статьи 20 марта 2012 г. Apple не разрешает пользователям устанавливать предыдущие файлы ipsw из 5.0.1. Если вы обновили свое устройство до iOS 5.1, как я сделал с моим 4-м поколением Touch, вам нужно либо запустить iOS 5.1 в Xcode 4.2, либо вернуть устройство на 4.x, либо заменить устройство.

Я принес свой штрих в Apple Store, и они заменили его.

Если вы установите ipsw для 5.0.1, серверы Apple сообщат, что это запрещено для вашего устройства, и вы не сможете выполнить возврат. Вам нужно будет попробовать 4.x на вашем устройстве или убедиться, что iOS 5.1 SDK работает в Xcode 4.2.


0

Я нашел, как это решить!

Моя система - Snow Leopard 10.6.8, и у меня есть два набора Xcode 3.2.5 и 4.2, после того, как я обновил свой iPad 1 до iOS 5.1, я запустил Xcode 3.2.5, мне открылось окно с неизвестным устройством был найден », я отвечаю« Да », чтобы загрузить множество библиотек со своего iPad, через несколько минут я могу отлаживать и запускать свои проекты на своем iPad!

Затем я запустил Xcode 4.2 и открыл один из моих предыдущих проектов, я действительно могу отлаживать и запускать его на своем iPad!

Таким образом, вы можете использовать любую версию Xcode для разработки приложений в системе Snow Leopard.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.