2013-09-24 7 views
26

Ich habe heute auf xcode 5.0 aktualisiert. Ich habe dann Play gedrückt, um mein Projekt im iOS-Simulator zu starten. Das hat anfangs funktioniert. Dann entschied ich, dass ich den Profiler ausführen wollte. Als ich das tat, bekam ich die Meldung:Xcode kann nach dem Upgrade auf Xcode 5.0 nicht mit dem ausgewählten Gerät ausgeführt werden

Xcode cannot run using the selected device. 
Choose a destination with a supported architecture in order to run on this device. 

ich auf ein paar sah über Beiträge zu diesem Problem und beschlossen, eine saubere und Bauen zu tun. Jetzt kann ich nicht mehr im Profiler oder im Simulator laufen. Ich erhalte ständig die Nachricht:

Xcode cannot run using the selected device. 
Choose a destination with a supported architecture in order to run on this device. 

Wie kann ich das beheben?

Hier sind verschiedene Einstellungen:

Mein Implementierungsziel 6.1

ist My Build Settings Architectures looks like:

ich auch versucht haben, das Implementierungsziel auf 7,0 zu ändern, aber das hat nicht funktioniert entweder

Antwort

77

Es scheint, Das Problem hängt nicht mit der Architektur in den Erstellungseinstellungen zusammen, wie der Fehler vermuten lässt. Stattdessen habe ich festgestellt, dass das Problem mit dem Build Options Compiler für C/C++/Objective C verwandt zu sein scheint. Ich verwendete einen gcc-Compiler (com.apple.compilers.llvmgcc42) und Xcode 5 hat dies als nicht unterstützt markiert.

Wenn ich den Compiler zu Apfel Standard Apple LLVM 5.0 ändern, baut das Projekt und es kann jetzt im Simulator ausgeführt werden. Der Nachteil ist, dass ich viele Compiler-Warnungen von Code im Zusammenhang mit cocos2D v1.0 Quellcode habe. Aber wenigstens habe ich einen Weg nach vorn.

+1

Vielen Dank! Das hat mich für Stunden verwirrt. In einer früheren Version bin ich wegen eines LLVM-Fehlers zu GCC gewechselt. –

+3

Das ist keine Lösung für mich. Mein Projekt wurde bereits mit LLVM 5.0 kompiliert. –

+0

Dies funktionierte für mich neben der Einstellung von CFBundleExecutable in der Info.plist zu $ ​​{EXECUTABLE_NAME} – kraftydevil

34

folgen Sie bitte folgenden Schritt

1> Zum Erstellen zum Projekt

2> Ändern Compiler für C/C++/Objective-C als Standard-Compiler (von Apple LLVM 5.0) (siehe Bild unten) Einstellung

enter image description here

+0

Danke, speziell für den Screenshot! – Denis

+0

Vielen Dank es spart meine Zeit !! Obige Antwort ist auch gleich, aber Sie haben uns mit Screenshot einfach gemacht. @Chirs Alen –

10

ich hatte an zwei Stellen Compiler für Standard-Compiler (von Apple LLVM 5.0) zu ändern:

    Einstellungen
  1. Erstellen> Build Options> Compiler für C/C++/Objective-C (Änderung LLVM)
  2. Build-Regeln> Dateien * .mc GCC (Änderung LLVM)

schwer zu finden, weil Code kompiliert, selbst wenn Build-Regeln auf einen nicht definierten Compiler zeigen.

+1

Das passierte mir, als ich nach vielen Jahren ein altes Projekt eröffnete (auch, wo Schemata fehlten). Vielen Dank!! –

+0

Ich verwende Xcode 5.1.1 und ich sehe keine FILES Option unter Build Rules. Gibt es eine andere Möglichkeit, diese zweite Änderung zu finden? – jsherk

0

Ich hatte diesen Fehler, als ich den Wert des "Bundle name" -Schlüssels in den Zieleigenschaften änderte. Durch die Umstellung auf "% {PRODUCT_NAME}" wurde das Problem für mich behoben.

6

Überprüfen Sie, dass die Executable-Datei (auch bekannt als CFBundleExecutable) in der Datei Info.plist auf $ {EXECUTABLE_NAME} im Gegensatz zu jedem hardcoded Wert festgelegt ist. Dadurch wird sichergestellt, dass auch dann, wenn Sie Ihren Projektnamen oder Zielnamen oder Schema-Namen ändern, immer noch funktioniert.

7

Nachdem ich alle Buildeinstellungen für 15 Minuten überprüft hatte, funktionierte das für mich (Xcode 5.0.2):

beenden und neu starten Xcode

3

Dieses Problem tritt häufig nach Zielen auf ältere Projekte duplizieren.

Set Folgendes in die Info.plist für das Ziel:

Bundle Name = ${PRODUCT_NAME} 
Bundle Display Name = ${PRODUCT_NAME} 
Executable file = ${EXECUTABLE_NAME} 

gebaut und mit diesen Einstellungen laufen, nach einem erfolgreichen Build kann sie zu allem geändert werden, die Sie wollen.

1

Das funktioniert für mich: "Xcode beenden und neu starten". Ich habe kürzlich etwas aktualisiert und das Testgerät auf Xcode sagte: "iDevice" nicht iPhone oder iPod. Also habe ich neu gestartet, dann kam mein iPhone zurück zur Zielliste.