¿Es posible obtener el SDK de iOS 5.1 para Xcode 4.2 en Snow Leopard?

139

Todavía tengo Snow Leopard. Tengo Xcode 4.2 para el desarrollo de iOS. Esta mañana actualicé mi iPhone y iPad a iOS 5.1.

Pero Xcode 4.2 no detecta mi dispositivo para realizar pruebas. No pude encontrar la imagen del SDK de iOS 5.1 en el sitio de desarrolladores de Apple, para Xcode 4.2.

No quiero actualizar a Lion para obtener XCode 4.3 en este momento.

¿Podré usar Xcode 4.2 (en Snow Leopard) para el desarrollo de iOS ahora?

jpsasi
fuente

Respuestas:

213

Para que Xcode 4.2 en Snow Leopard ejecute código en un dispositivo con iOS 5.1 , puede hacer esto:

  1. Si tiene otra Mac con Lion y Xcode 4.3.1, puede copiar los archivos de:

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

  2. Coloque los archivos copiados en el lugar equivalente en su Snow Leopard Mac: probablemente

    /Developer/Platforms/iPhoneOS.platform/DeviceSupport

  3. Del mismo modo, copie los archivos SDK de iOS 5.1 que se encuentran en este directorio:

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

  4. Copie también 'version.plist' de la máquina Lion en la carpeta iPhoneOS.platform a la máquina Snow Leopard.

  5. Reinicie Xcode en la máquina Snow Leopard y vuelva a conectar los dispositivos y parece bastante feliz.

Si no tiene acceso a una máquina con Lion y Xcode 4.3.1:

  1. Puede obtener los archivos 4.3.1 DMGque se pueden descargar desde Apple aquí : Descargas para desarrolladores de Apple .

  2. Monte el DMG, muestre el contenido del paquete en el ícono de Xcode y profundice en

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

  3. Sigue los pasos anteriores.

Puede que le resulte más conveniente utilizar el dittométodo patentado de Apple ( sudo ditto src dest) en la ventana del terminal para copiar las carpetas.

Tenga en cuenta que este truco también funcionará para el último SDK de iOS 6.

Richard Groves
fuente
3
Hoy he actualizado mi sistema a Lion. Gracias por el truco.
jpsasi
Muchas gracias :) Funcionó perfecto para mí. Al menos podré desarrollarme con sl por más tiempo.
OnTheFly
14
Solucioné el problema anterior copiando también los archivos en /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.1.sdk. Gracias por esto, ahora puedo aplazar el reemplazo de mi antigua Mac durante al menos un par de meses más.
Dan Dyer
66
@natbro: sigo viendo la multa de 4.3.1 dmg en developer.apple.com/downloads/index.action# y actualmente la estoy descargando.
SubG
1
XCode 4.3.3 también lo contiene y funciona muy bien. Muchas gracias por esto
Krym
14

Tienes que obtener Lion, iOS 5.1 SDK es solo para Xcode 4.3.1, que solo está disponible para Lion.

... y su Xcode no podrá compilarse en su dispositivo si ya lo ha actualizado a 5.1 porque no estará en esa versión de los SDK aprobados de Xcode

Mick MacCallum
fuente
14

Estoy trabajando en esto ahora. Tengo el mismo problema.

Los principales problemas aquí son que:

1) Apple nunca proporcionó un cuadro de diálogo de advertencia de que esto podría deshabilitar a las personas que se desarrollan bajo Snow Leopard.

2) No hay una manera fácil de deshacer esto.

3) Esto no debería suceder en una actualización de lanzamiento puntual.

He intentado instalar el ipsw anterior de 5.0.1 para mi Gen 4 IPod Touch desde aquí: dónde descargar los enlaces de restauración del firmware del iPod touch No se instalará.

He descargado el Lion Xcode 4.3.1 desde aquí (inicie sesión como desarrollador primero) Lion Xcode 4.3.1

Y ejecute algunos scripts de los foros de desarrollo aquí:

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

Desmonta el Lion DMG y reinicia Xcode. Esto me permitió probar 5.1 en el simulador, pero rompió cada compilación en cada dispositivo con un SIGABRT o error de enlace.

Me voy a la tienda de Apple para que restauren mi dispositivo. Si obtengo más información, les avisaré a todos. Esta ha sido una sorpresa MUY CARA y MUY AGRADABLE.

Alex Zavatone
fuente
3
Estoy totalmente de acuerdo contigo. El comportamiento de Apple en esto es más que irresponsable. Te dice: simplemente no les importa.
EdH
3
Solía ​​amar a Apple antes de convertirme en uno de los pobres bastardos que tuvieron que desarrollar en la plataforma iOS.
Alex Zavatone
8

Agregando a la solución de Richards anterior, descubrí que si también copia, desde XCode 4.3.1 dmg ...

editar: actualizado a la ruta correcta dentro de dmg

/Volumes/Xcode/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Develope‌ r / SDKs / iPhoneOS5.1.sdk ~~ (árbol de directorios completo)

a

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

El depurador XCode se iniciará correctamente (sin todo el registro de errores y los volcados)

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.
===============================================================================
dklt
fuente
Creo que la ruta a la que te refieres es: /Volumes/Xcode/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs (que es un poco más profundo de lo que sugiere tu publicación: jerarquía complicada con la que Apple terminó no es it?)
Richard Groves
de hecho, tienes razón. Actualización de la publicación para reflejar su ruta correcta. aplausos ~
dklt
7

Aquí hay una respuesta que también proporciona la copia del simulador v 5.1. Sin operaciones manuales. Simplemente abra la Terminal, copie y pegue los comandos proporcionados.

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

prossel
fuente
Seguí las instrucciones de Richard Groves y @ dklt. No funcionó. Pero despedí los guiones que figuran en este enlace y funcionó de maravilla
Vaishnavi Naidu
"Esta página web en www.iphonedevsdk.com se ha informado como una página de ataque y se ha bloqueado en función de sus preferencias de seguridad". - Tendría mucho cuidado :)
Roel Van de Paar
Se ha informado de todo el sitio iphonedevsdk.com , no solo esta página.
prossel
5

si también desea agregar iphone simulator 5.1 a su xcode, copie

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

directorio completo a la siguiente ruta =>

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

después, también puede usar el simulador de iPhone 5.1 para depurar su aplicación.

hchouhan02
fuente
1
Recibo los siguientes errores cuando hago esto @ hchouhan02: Error del compilador XIB de Interface Builder: "Error en el comando / Desarrollador / usr / bin / ibtool con el código de salida 255" y Descategorizado: "La tarea de compilación falló sin generar mensajes de error".
JRoss
Pruebe esto => salir de xcode => abrir xcode => limpiar proyecto después de intentar construir el proyecto.
hchouhan02
5

Puede usar aplicaciones compiladas para 5.0 en su dispositivo 5.1 o 5.1.1 compilándolas y arrastrando manualmente el archivo .app a iTunes. Probado hoy en 10.6.8 y XCode 4.2.

Marcin Ignac
fuente
Esto funcionó para mí hoy. Estoy en SL con xcode 4.2. [Mac OS X 10.6.8 (10K549). Xcode 4.2 (4C199). iPhone OS SDK 5.0: (9A334).]
martin jakubik
Puede encontrar el archivo .app en ~ / Library / Developer / Xcode / DerivedData / {nombre de la aplicación} / Build / Products / Deployment / (gracias a stackoverflow.com/a/9673810/1208218 )
Roel Van de Paar
Y más información aquí en términos de cómo hacer que todo funcione: stackoverflow.com/a/11460561/1208218
Roel Van de Paar
4

Descargue el firmware iOS 5.0.1 de su dispositivo en este enlace: http://www.iphonefirmware.com/firmwares-download .

Y hacer una restauración manual en iTunes.

Lo hice hoy (8 de marzo) en mi iPad 2 y funciona, Apple todavía parece firmar esta versión de iOS. Supongo que no por mucho tiempo, así que hágalo rápidamente.

reserva
fuente
1
10 de marzo: No funcionó. Recibí un mensaje indicando que la versión del software no era compatible con mi dispositivo, un iPod Touch 4G.
Seamus
Apple se detuvo para firmarlo desde el fin de semana pasado
booker
3

No es posible usar un dispositivo 5.1 en xcode 4.2, ya que no desea actualizar, puede usar el organizador, seleccionar su dispositivo y usar la función de restauración. Puede buscar en Google la versión 5.0.1 y utilizarla.

(aunque actualizar a lion es super barato)

EDITAR: Parece que esto es posible, desplácese hacia arriba para obtener la respuesta más votada.

Pochi
fuente
Como Mountain Lion se lanzará en un par de meses, no quiero actualizarme a Lion ahora, suponiendo que pueda actualizar a Mountain Lion de Snow Leopard. Supongo que necesito encontrar una manera de restaurar iOS 5.0.1 en mi dispositivo. Gracias
jpsasi
de nada. No debería ser tan difícil de restaurar, como te dije antes, xCode proporciona la función de restauración (que se encuentra en la ventana del menú del organizador-> organizador-> dispositivos-> RestoreIphone). Por cierto, no sé si puedes ir directamente al león de montaña, como ejemplo tienes que pasar a través de snowleopard para llegar al león de leopardo.
Pochi
Aparentemente no será necesario actualizar a Lion primero y puedes ir directamente de Snow Leopard a Mountain Lion
Roel Van de Paar
3

Estoy usando Mac OS X 10.6.8 y Xcode 4.2 y también actualicé mi iPhone a iOS 5.1. Ayer tuve que obtener una versión de prueba en el dispositivo a toda prisa, pero no tuve tiempo de instalar Lion y Xcode 4.3.

He estado usando TestFlight (www.testflightapp.com) para las pruebas beta. Creé un archivo .ipa a partir de Xcode 4.2 y pude instalarlo en mi iPhone actualizado con iOS 5.1 a través de TestFlight.

Sé que no es una solución ideal, pero ayer me ayudó a salir de una situación difícil sin recurrir a los hacks.

ps No estoy afiliado a TestFlight de ninguna manera.

egincyf
fuente
2

Parece que Xcode 4.2 ya no está disponible en developer.apple.com para usuarios de leopardo de las nieves :( también para desarrolladores registrados de iOS que pagan como yo ...

Parece que por el momento no hay forma legal de obtenerlo ...

gabry
fuente
2

También debe agregar el alias de Símbolos ... por ejemplo /Developer/Platforms/iPhoneOS.platform/DeviceSupport/6.0 (10A403), debe agregar el alias de Símbolos que apuntan para /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.0.sdkque xcode 4.2 pueda detectar su dispositivo ios6 (probado en mac mini 1.5 intel core solo con snow leopard). Salud

Walter
fuente
En mi caso, el Symbolsalias ya estaba allí después de haber copiado la DeviceSupport/6.0 (10A403)carpeta de la imagen del disco Xcode 4.5.
herzbube
1

Creo que puede probar el dispositivo ios 5.1 en Snow Leopard como se explica en las publicaciones anteriores. Pero siempre es seguro actualizar a Lion y usar el lanzamiento oficial de SDK. Debido a que no podemos predecir qué problema podría suceder si hacemos algunos "Trucos" en nuestra máquina para que suceda y puede suceder en el momento más no deseado (como cuando se envía a la tienda de aplicaciones). :)

rakeshNS
fuente
1

A partir de la fecha de este escrito 3 / 20,2012, Apple no permite que las personas instalen archivos ipsw anteriores de 5.0.1. Si actualizó su dispositivo a iOS 5.1, como hice con mi gen 4 Touch, entonces debe ejecutar iOS 5.1 en Xcode 4.2, o debe revertir su dispositivo a 4.x, o reemplazar su dispositivo.

Traje mi toque a la Apple Store y lo reemplazaron.

Si instala el ipsw para 5.0.1, los servidores de Apple indicarán que esto no está permitido para su dispositivo y no podrá revertirlo. Tendrá que probar 4.x en su dispositivo o asegurarse de que el SDK de iOS 5.1 se ejecute en Xcode 4.2.

Alex Zavatone
fuente
0

¡He encontrado cómo resolverlo!

Mi sistema es Snow Leopard 10.6.8, y tengo dos juegos de Xcode de 3.2.5 y 4.2, después de actualizar mi iPad 1 a iOS 5.1, lancé Xcode 3.2.5, me abrió una ventana de 'dispositivo desconocido fue encontrado ', respondo' Sí 'para descargar muchas bibliotecas de mi iPad, ¡varios minutos después, puedo depurar y ejecutar mis proyectos en mi iPad!

Luego lancé Xcode 4.2 y abrí uno de mis proyectos anteriores, ¡realmente puedo depurarlo y ejecutarlo en mi iPad!

De esta manera, puede usar cualquier versión de Xcode para desarrollar aplicaciones en un sistema Snow Leopard.

arte de golf
fuente