web-dev-qa-db-fra.com

Pourquoi ai-je le message d'erreur "La commande/usr/bin/codesign a échoué avec le code de sortie 1" dans Xcode 6 sur Yosemite?

J'utilise Xcode 6.1, l'aperçu OS X Yosemite 8 et j'obtiens le message d'erreur suivant lors de la signature du code de mon application:

La commande/usr/bin/codesign a échoué avec le code de sortie 1

En lisant sur Google, il semble être lié à des certificats/profils d'approvisionnement expirés. J'ai supprimé tous mes certificats et profils, créé un nouveau certificat et profil de développement, installé les deux, redémarré mon Mac et j'obtiens toujours la même erreur.

Quelqu'un peut-il nous éclairer sur la façon de résoudre ce problème?

10
scb998

J'ai donc réussi à résoudre le problème pour mon cas particulier - dans les paramètres de construction, au lieu de détecter automatiquement le profil de certificat et d'approvisionnement à utiliser, je les ai définis manuellement - et cela fonctionne. 

1
scb998

Que diriez-vous de cela: Essayez Xcode -> Préférences -> Comptes -> Choisissez votre compte, puis Afficher les détails -> Actualiser (bouton en bas à gauche), Actualiser à nouveau, redémarrez XCode. On dirait du vaudou mais ça marche pour moi et mon équipe! (L'afficher comme réponse, parce que ça marche, au moins parfois et pour certaines personnes. Peut-être lié au temps;))

36
LMVogel

à partir de Xcode 6.3.2, voici ce que j’ai fait ... depuis la vue principale du projet, cliquez sur les paramètres de construction et dans le type de barre de recherche dans le certificat; et cela a fonctionné

2
C. Greene

Dans mon cas, je rencontrais cette erreur en essayant de construire un projet que j'avais téléchargé de Github pour mon usage personnel. Je suis simplement allé dans les paramètres de construction et je lui ai dit de ne pas signer le code.

1
Keith

Un autre piège que j'ai remarqué est que codesign échouera s'il est exécuté à partir d'une session de connexion SSH ordinaire. Il doit être exécuté sur une fenêtre d’interface graphique de bureau MacOSX. Cela me prend à chaque fois, j'ai donc ajouté une ligne au script de construction pour imprimer un message sur l'exécution du script sur l'interface graphique de MacOSX en cas d'échec de la codification.

1

Supprime le profil provisoire précédent et ajoute un nouveau profil provisoire. Redémarrez la machine si elle continue à donner une erreur comme ci-dessus. lorsque votre machine s'éteint, votre appareil demande automatiquement l'autorisation, puis sélectionnez Confirmer et exécutez votre code ... son fonctionnement.

0
Sarat Patel

J'ai d'abord dû supprimer tous mes certificats de développeur de Keychain Access, puis utiliser la méthode Préférences -> Comptes -> Afficher les détails -> Télécharger tout pour signer correctement mon code.

0
Dave Cole

Il semble y avoir un bogue dans XCode (j'utilise la version 7.1.1) avec le retour à "Signature: aucune" après avoir tenté de signer avec une identité expirée, ce qui entraîne cette erreur de code même après avoir apparemment supprimé la mauvaise signature identité.

Le fichier project.pbxproj conserve TargetAttributes pour l'identité expirée et les paramètres Debug et Release continuent d'afficher les éléments suivants au lieu des valeurs vides d'origine:

"CODE_SIGN_IDENTITY[sdk=macosx*]" = "Mac Developer";

Cela persiste après cmd + alt + shift + K et la fermeture de XCode. Je l'ai corrigé avec une réinitialisation git (si je n'avais pas commis avant d'essayer de signer, je ne suis pas sûr de la façon dont j'aurais trouvé cela).

0
Jacob Rose