web-dev-qa-db-fra.com

Xcode ne peut pas s'exécuter à l'aide du périphérique sélectionné après la mise à niveau vers Xcode 5.0

J'ai mis à jour vers xcode 5.0 aujourd'hui. J'ai ensuite appuyé sur play pour exécuter mon projet dans le simulateur iOS. Cela a d'abord fonctionné. Ensuite, j'ai décidé que je voulais exécuter le profileur. Quand je l'ai fait, j'ai reçu le message:

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

J'ai regardé quelques articles précédents sur ce problème et j'ai décidé de faire un nettoyage et une construction. Maintenant, je ne peux plus exécuter dans le profileur ou le simulateur. Je reçois toujours le message:

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

Comment puis-je résoudre ça?

Voici différents paramètres:

Ma cible de déploiement est 6.1

My Build Settings Architectures looks like:

J'ai également essayé de changer la cible de déploiement en 7.0, mais cela n'a pas fonctionné non plus

26
JeffB6688

Il semble que le problème ne soit pas lié à l'architecture des paramètres de génération, comme l'erreur pourrait le suggérer. Au lieu de cela, j'ai trouvé que le problème semble être lié au compilateur d'options de construction pour C/C++/Objective C. J'utilisais un compilateur gcc (com.Apple.compilers.llvmgcc42) et Xcode 5 l'a marqué comme non pris en charge.

Si je change le compilateur par défaut d'Apple Apple LLVM 5.0, le projet se construit et il peut maintenant fonctionner dans le simulateur. L'inconvénient est que j'ai beaucoup d'avertissements du compilateur à partir du code lié à cocos2D v1 .0 code source. Mais, au moins, j'ai une voie à suivre.

77
JeffB6688

Veuillez suivre l'étape ci-dessous

1> Accédez au paramètre de création de projet

2> Changer le compilateur pour c/c ++/Objective C comme compilateur par défaut (Apple LLVM 5.0) (voir l'image ci-dessous)

enter image description here

34
Chris Alan

J'ai dû changer le compilateur pour le compilateur par défaut (Apple LLVM 5.0) à deux endroits:

  1. Paramètres de build> Options de build> Compilateur pour C/C++/Objective-C (passer à LLVM)
  2. Build Rules> Files * .mc using GCC (change to LLVM)

Difficile à trouver car le code se compile même si les règles de génération pointent vers un compilateur non défini.

10
rjobidon

Après avoir inspecté tous les paramètres de construction pendant 15 minutes, cela a fonctionné pour moi (Xcode 5.0.2):

Quittez et redémarrez Xcode

7
Jason Moore

Vérifiez que le fichier exécutable (également appelé CFBundleExecutable) dans le fichier Info.plist est défini sur $ {EXECUTABLE_NAME} par opposition à toute valeur codée en dur. Cela garantira que même si vous changez le nom de votre projet ou le nom cible ou le nom du schéma, cela fonctionne toujours.

6
jsherk

Ce problème se produit souvent après la duplication de cibles sur des projets plus anciens.

Définissez les éléments suivants dans votre Info.plist pour la cible:

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

Générez et exécutez avec ces paramètres, après une génération réussie, ils peuvent être modifiés en tout ce que vous voulez.

3
A.Badger

Cela fonctionne pour moi: "Quitter et redémarrer Xcode". J'ai récemment mis à jour quelque chose et l'appareil de test sur Xcode a dit: "iDevice" pas iPhone ou iPod. J'ai donc redémarré puis mon iPhone est revenu à la liste des cibles.

1
Khang Azun

J'ai eu cette erreur lorsque j'ai changé la valeur de la clé "Bundle name" dans les propriétés de la cible. Le remplacer par "% {PRODUCT_NAME}" a résolu le problème pour moi.

0
ediheld