Ist es möglich, das iOS 5.1 SDK für Xcode 4.2 auf Snow Leopard zu erhalten?

139

Ich habe immer noch Schneeleopard. Ich habe Xcode 4.2 für die iOS-Entwicklung. Heute Morgen habe ich mein iPhone und iPad auf iOS 5.1 aktualisiert.

Xcode 4.2 erkennt mein Gerät jedoch nicht zum Testen. Ich konnte das iOS 5.1 SDK-Image auf Apples Entwicklerseite für Xcode 4.2 nicht finden.

Ich möchte derzeit kein Upgrade auf Lion durchführen, um XCode 4.3 zu erhalten.

Kann ich Xcode 4.2 (auf Snow Leopard) jetzt für die iOS-Entwicklung verwenden?

jpsasi
quelle

Antworten:

213

So können Sie Xcode 4.2 auf Snow Leopard auf einem Gerät mit iOS 5.1 ausführen :

  1. Wenn auf einem anderen Mac Lion und Xcode 4.3.1 ausgeführt werden, können Sie die Dateien kopieren von:

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

  2. Platzieren Sie die kopierten Dateien an der entsprechenden Stelle auf Ihrem Snow Leopard Mac: wahrscheinlich

    /Developer/Platforms/iPhoneOS.platform/DeviceSupport

  3. Kopieren Sie auf ähnliche Weise die in diesem Verzeichnis gefundenen iOS 5.1 SDK-Dateien:

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

  4. Kopieren Sie auch 'version.plist' vom Lion-Computer im Ordner iPhoneOS.platform auf den Snow Leopard-Computer.

  5. Starten Sie Xcode auf dem Snow Leopard-Computer neu und schließen Sie die Geräte erneut an.

Wenn Sie keinen Zugriff auf eine Maschine mit Lion und Xcode 4.3.1 haben:

  1. Sie können die Dateien, die 4.3.1 DMGvon Apple heruntergeladen werden können, hier herunterladen : Downloads für Apple-Entwickler .

  2. Hängen Sie die DMG ein, zeigen Sie den Paketinhalt auf dem Xcode-Symbol an und führen Sie einen Drilldown zu durch

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

  3. Befolgen Sie die obigen Schritte.

Möglicherweise ist es bequemer, Apples proprietäre dittoMethode ( sudo ditto src dest) im Terminalfenster zu verwenden, um die Ordner zu kopieren.

Beachten Sie, dass dieser Hack auch für das neueste iOS 6 SDK funktioniert.

Richard Groves
quelle
3
Heute habe ich mein System auf Lion aktualisiert. Danke für den Hack.
JPSASI
Vielen Dank :) Hat perfekt für mich funktioniert. Zumindest werde ich mich noch einige Zeit mit sl entwickeln können.
OnTheFly
14
Ich habe das obige Problem behoben, indem ich auch die Dateien in /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.1.sdk kopiert habe. Vielen Dank dafür, ich kann den Austausch meines alten Mac jetzt um mindestens ein paar Monate verschieben.
Dan Dyer
6
@natbro - Ich sehe immer noch die 4.3.1 dmg Geldstrafe unter developer.apple.com/downloads/index.action# und lade sie derzeit herunter.
SubG
1
XCode 4.3.3 enthält es ebenfalls und funktioniert hervorragend. Vielen Dank dafür
Krym
14

Sie müssen Lion erwerben, iOS 5.1 SDK ist nur für Xcode 4.3.1 verfügbar, der nur für Lion verfügbar ist.

... und Ihr Xcode kann nicht auf Ihrem Gerät erstellt werden, wenn Sie es bereits auf 5.1 aktualisiert haben, da es nicht in dieser Version der von Xcode genehmigten SDKs enthalten ist

Mick MacCallum
quelle
14

Ich arbeite gerade daran. Ich habe das gleiche Problem.

Die wichtigsten Probleme hier sind:

1) Apple hat niemals einen Warndialog bereitgestellt, der die Entwicklung von Personen unter Snow Leopard behindern könnte.

2) Es gibt keine einfache Möglichkeit, dies rückgängig zu machen.

3) Dies sollte bei einem Point Release Update nicht passieren.

Ich habe versucht, das vorherige ipsw von 5.0.1 für meinen Gen 4 IPod Touch von hier aus zu installieren: Wo kann ich die Links zur Wiederherstellung der iPod touch-Firmware herunterladen? Es wird nicht installiert.

Ich habe den Lion Xcode 4.3.1 von hier heruntergeladen (zuerst als Entwickler anmelden) Lion Xcode 4.3.1

Und führen Sie hier einige Skripte aus den Dev-Foren aus:

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

Hängte die Lion DMG ab und startete Xcode neu. Dadurch konnte ich 5.1 im Simulator testen, aber jeden Build für jedes Gerät mit einem SIGABRT- oder Link-Fehler beschädigen.

Ich gehe in den Apple Store, damit sie mein Gerät wiederherstellen. Wenn ich weitere Informationen bekomme, werde ich Sie alle wissen lassen. Dies war eine sehr teure und sehr unangenehme Überraschung.

Alex Zavatone
quelle
3
Ich stimme dir vollkommen zu. Apples Verhalten in dieser Hinsicht ist unverantwortlich. Es sagt dir: Es ist ihnen einfach egal.
EdH
3
Ich habe Apple geliebt, bevor ich einer der armen Bastarde wurde, die sich auf der iOS-Plattform entwickeln mussten.
Alex Zavatone
8

Als ich die obige Richards-Lösung hinzufügte, stellte ich fest, dass, wenn Sie auch kopieren, von XCode 4.3.1 dmg ...

edit: aktualisiert, um den Pfad innerhalb von dmg zu korrigieren

/Volumes/Xcode/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Develope‌ r / SDKs / iPhoneOS5.1.sdk ~~ (gesamter Verzeichnisbaum)

zu

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

Der XCode-Debugger wird korrekt gestartet (ohne das gesamte Fehlerprotokoll und die Speicherauszüge).

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
quelle
Ich denke, der Pfad, den Sie meinen, ist: /Volumes/Xcode/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs (der etwas tiefer liegt als Ihr Beitrag vermuten lässt - komplizierte Hierarchien, mit denen Apple am Ende nicht fertig ist es?)
Richard Groves
in der Tat sind Sie richtig. Aktualisieren des Beitrags, um Ihren korrekten Pfad wiederzugeben.
Prost
7

Hier gibt es eine Antwort, die auch die Kopie des Simulators v 5.1 enthält. Keine manuellen Operationen. Öffnen Sie einfach das Terminal, kopieren Sie die bereitgestellten Befehle und fügen Sie sie ein.

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

Prossel
quelle
Ich habe sowohl die Anweisungen von Richard Groves als auch von @ dklt befolgt. Es hat nicht funktioniert. Aber ich habe die in diesem Link angegebenen Skripte abgefeuert und es hat wie ein Zauber funktioniert
Vaishnavi Naidu
"Diese Webseite unter www.iphonedevsdk.com wurde als Angriffsseite gemeldet und aufgrund Ihrer Sicherheitseinstellungen blockiert." - Ich wäre sehr vorsichtig :)
Roel Van de Paar
Die gesamte Website von iphonedevsdk.com wurde gemeldet, nicht nur diese Seite.
Prossel
5

Wenn Sie Ihrem Xcode auch den iPhone Simulator 5.1 hinzufügen möchten, kopieren Sie ihn

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

gesamtes Verzeichnis zum folgenden Pfad =>

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

Danach können Sie auch iPhone Simulator 5.1 zum Debuggen Ihrer Anwendung verwenden.

hchouhan02
quelle
1
Ich erhalte die folgenden Fehler, wenn ich dies tue @ hchouhan02: Interface Builder XIB-Compiler-Fehler: "Befehl / Entwickler / usr / bin / ibtool mit Exit-Code 255 fehlgeschlagen" und Nicht kategorisiert: "Build-Task fehlgeschlagen, ohne Fehlermeldungen zu generieren."
JRoss
Versuchen Sie dies => beenden Sie xcode => öffnen Sie xcode => bereinigen Sie das Projekt, nachdem Sie versucht haben, ein Projekt zu erstellen.
hchouhan02
5

Sie können für 5.0 kompilierte Apps auf Ihrem 5.1- oder 5.1.1-Gerät verwenden, indem Sie sie kompilieren und die App-Datei manuell nach iTunes ziehen. Versucht heute auf 10.6.8 und XCode 4.2.

Marcin Ignac
quelle
Das hat heute bei mir funktioniert. Ich bin auf SL mit xcode 4.2. [Mac OS X 10.6.8 (10K549). Xcode 4.2 (4C199). iPhone OS SDK 5.0: (9A334).]
Martin Jakubik
Sie finden die .app-Datei unter ~ / Library / Developer / Xcode / DerivedData / {App-Name} / Build / Products / Deployment / (dank stackoverflow.com/a/9673810/1208218 )
Roel Van de Paar
Und einige weitere Informationen hier, wie genau dies alles zum Laufen gebracht werden kann: stackoverflow.com/a/11460561/1208218
Roel Van de Paar
4

Laden Sie die iOS 5.0.1-Firmware Ihres Geräts über diesen Link herunter: http://www.iphonefirmware.com/firmwares-download .

Führen Sie eine manuelle Wiederherstellung in iTunes durch.

Ich habe es heute (8. März) auf meinem iPad 2 gemacht und es funktioniert, Apple scheint diese iOS-Version immer noch zu signieren. Ich denke nicht lange, also mach es schnell.

Bucher
quelle
1
10. März: Hat nicht funktioniert. Es wurde eine Meldung angezeigt, dass die Version der Software für mein Gerät, einen iPod Touch 4G, nicht unterstützt wurde.
Seamus
Apple hat angehalten, um es seit Ende der letzten Woche zu unterschreiben
Booker
3

Es ist nicht möglich, ein 5.1-Gerät unter xcode 4.2 zu verwenden, da Sie kein Upgrade durchführen möchten. Sie können den Organizer verwenden, Ihr Gerät auswählen und die Wiederherstellungsfunktion verwenden. Sie können für die Version 5.0.1 googeln und diese verwenden.

(obwohl ein Upgrade auf Lion sehr billig ist)

BEARBEITEN: Scheint möglich zu sein, scrollen Sie nach oben, um die Antwort mit der höchsten Bewertung zu erhalten.

Pochi
quelle
Da Mountain Lion in ein paar Monaten veröffentlicht wird, möchte ich jetzt nicht auf Lion upgraden, vorausgesetzt, ich sollte von Snow Leopard auf Mountain Lion upgraden können. Ich denke, ich muss einen Weg finden, um iOS 5.0.1 auf meinem Gerät wiederherzustellen. Danke
jpsasi
Bitte schön. Es sollte nicht so schwer wiederherzustellen sein, wie ich Ihnen bereits sagte, bietet xCode die Wiederherstellungsfunktion (im Organizer-Menüfenster-> Organizer-> Geräte-> RestoreIphone). Übrigens weiß man nicht, ob man direkt zum Berglöwen gehen kann. Als Beispiel muss man durch den Schneeleoparden fahren, um vom Leoparden zum Löwen zu gelangen.
Pochi
Anscheinend ist es nicht notwendig, zuerst ein Upgrade auf Lion durchzuführen, und Sie können direkt vom Schneeleoparden zum Berglöwen
Roel Van de Paar
3

Ich verwende Mac OS X 10.6.8 und Xcode 4.2 und habe auch mein iPhone auf iOS 5.1 aktualisiert. Ich musste gestern in Eile eine Testversion auf das Gerät bringen, hatte aber nicht die Zeit, Lion und Xcode 4.3 zu installieren.

Ich habe TestFlight (www.testflightapp.com) für Betatests verwendet. Ich habe ein .ipa-Archiv aus Xcode 4.2 erstellt und konnte es über TestFlight auf meinem mit iOS 5.1 aktualisierten iPhone installieren.

Ich weiß, dass es keine ideale Lösung ist, aber es hat mir gestern geholfen, aus einer schwierigen Situation herauszukommen, ohne auf Hacks zurückzugreifen.

ps Ich bin in keiner Weise mit TestFlight verbunden.

Egincyf
quelle
2

Xcode 4.2 scheint auf developer.apple.com für Benutzer von Schneeleoparden nicht mehr verfügbar zu sein :( auch für registrierte zahlende iOS-Entwickler wie mich ...

Es scheint, dass es im Moment keinen legalen Weg gibt, es zu bekommen ...

gabry
quelle
2

Sie müssen auch den Symbol-Alias ​​hinzufügen. Zum Beispiel /Developer/Platforms/iPhoneOS.platform/DeviceSupport/6.0 (10A403)müssen Sie einen Symbol-Alias ​​hinzufügen, der darauf /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.0.sdkverweist , damit xcode 4.2 Ihr ios6-Gerät erkennen kann (getestet auf Mac Mini 1.5 Intel Core Solo mit Schneeleopard). Prost

Walter
quelle
In meinem Fall war der SymbolsAlias ​​bereits vorhanden, nachdem ich den DeviceSupport/6.0 (10A403)Ordner vom Xcode 4.5-Image kopiert hatte .
Herzbube
1

Ich denke, Sie können das ios 5.1-Gerät in Snow Leopard testen, wie in den obigen Beiträgen erläutert. Es ist jedoch immer sicher, ein Upgrade auf Lion durchzuführen und die offizielle SDK-Version zu verwenden. Weil wir nicht vorhersagen können, welches Problem auftreten könnte, wenn wir einige "Tricks" auf unserem Computer ausführen, um dies zu erreichen. Dies kann in Ihrer unerwünschtesten Zeit geschehen (z. B. beim Senden an den Appstore). :) :)

rakeshNS
quelle
1

Zum Datum dieses Schreibens vom 20.03.2012 lässt Apple nicht zu, dass Benutzer frühere ipsw-Dateien ab 5.0.1 installieren. Wenn Sie Ihr Gerät wie bei meinem Gen 4 Touch auf iOS 5.1 aktualisiert haben, müssen Sie entweder iOS 5.1 in Xcode 4.2 ausführen oder Ihr Gerät auf 4.x zurücksetzen oder Ihr Gerät ersetzen.

Ich habe meine Berührung in den Apple Store gebracht und sie haben sie ersetzt.

Wenn Sie ipsw für 5.0.1 installieren, geben die Apple-Server an, dass dies für Ihr Gerät nicht zulässig ist und Sie nicht zurücksetzen können. Sie müssen 4.x auf Ihrem Gerät ausprobieren oder sicherstellen, dass das iOS 5.1 SDK in Xcode 4.2 ausgeführt wird.

Alex Zavatone
quelle
0

Ich habe gefunden, wie ich es lösen kann!

Mein System ist Snow Leopard 10.6.8, und ich habe zwei Xcode-Sätze 3.2.5 und 4.2. Nachdem ich mein iPad 1 auf iOS 5.1 aktualisiert und Xcode 3.2.5 gestartet hatte, wurde ein Fenster mit einem unbekannten Gerät angezeigt gefunden wurde ', antworte ich mit' Ja ', um viele Bibliotheken von meinem iPad herunterzuladen. Einige Minuten später kann ich meine Projekte auf meinem iPad debuggen und ausführen!

Dann habe ich Xcode 4.2 gestartet und eines meiner vorherigen Projekte geöffnet. Ich kann es wirklich debuggen und auf meinem iPad ausführen!

Auf diese Weise können Sie mit beiden Versionen von Xcode Apps auf einem Snow Leopard-System entwickeln.

Kunstgolf
quelle