web-dev-qa-db-fra.com

Swift stdlib

Je reçois cette erreur lors de la compilation avec Xcode 8.1 et Swift 3:

Erreur de l'outil Swift stdlib

La fin du journal de compilation ressemble à ceci:

/Users/..../Library/Developer/Xcode/DerivedData/.../Build/Products/Debug/.../Contents/Frameworks/libswiftCore.dylib: replacing existing signature
/Users/..../Library/Developer/Xcode/DerivedData/.../Build/Products/Debug/.../Contents/Frameworks/libswiftCore.dylib: CSSMERR_CSP_INVALID_CONTEXT_HANDLE
In architecture: x86_64
Probing signature of /Users/..../Library/Developer/Xcode/DerivedData/.../Build/Products/Debug/.../Contents/Frameworks/libswiftXPC.dylib
  /usr/bin/codesign '-r-' '--display' '/Users/..../Library/Developer/Xcode/DerivedData/.../Build/Products/Debug/.../Contents/Frameworks/libswiftXPC.dylib'
error: Task failed with exit 1 signal 0 {
    /usr/bin/codesign '--force' '--sign' '-' '--verbose' '/Users/..../Library/Developer/Xcode/DerivedData/.../Build/Products/Debug/.../Contents/Frameworks/libswiftCore.dylib'
}

La chose très étrange est que si je copie le dossier avec le projet sur mon bureau, il se compile sans l'erreur. Si je le copie ailleurs, ça fait des erreurs. Le déplacer d'avant en arrière plusieurs fois pour vérifier, enfin après le troisième mouvement, c'est aussi une erreur sur le bureau.

Des idées?

Merci d'avance.

21
Dribbler

La nature non déterministe des symptômes me fait penser que c'est un problème avec les données périmées dans le dossier DerivedData de Xcode.

Trash le contenu de /Users/..../Library/Developer/Xcode/DerivedData/, cela devrait résoudre votre problème.

La suppression du contenu de ce dossier n'est pas problématique car Xcode recréera ce dont il a besoin s'il est manquant.

13
ayaio

J'ai eu le même problème plus tôt dans la journée.

Je suis nouveau sur Xcode et Swift et je viens de commencer à expérimenter. Dans l'un des premiers tutoriels, il suggère de compiler pour un simulateur, puis d'essayer de compiler pour votre appareil.

Lorsque j'ai compilé pour mon appareil, il m'a demandé mon mot de passe de trousseau, la première fois que j'ai essayé, j'ai obtenu mon mot de passe incorrect, en supposant que ce n'était pas nécessaire, j'ai cliqué sur le refus d'accès au bouton du trousseau.

J'ai lu quelques requêtes de dépassement de pile sur le même sujet et en ai trouvé une qui suggérait de redémarrer le Mac.

Cela a fonctionné pour moi.

  1. redémarrez votre Mac
  2. ouvrez votre projet Xcode
  3. sélectionnez votre appareil comme cible
  4. compiler
  5. entrez le mot de passe du trousseau et cliquez sur Autoriser ou Toujours autoriser
17
Prashant Fernandes

Si la suppression de DerivedData n'a pas fonctionné pour vous, essayez de télécharger à nouveau tous les profils, puis assurez-vous d'avoir Développement iOS dans vos certifications.

Vous pouvez vous en assurer en vérifiant ceci: Ouvrez Xcode → Xcode → Préférences → Comptes. Cliquez sur votre appleId dans la liste, cliquez sur Télécharger tous les profils, et attendez qu'il télécharge tous les profils. Cliquez ensuite sur Gérer les certifications → cliquez sur + signe → Développement iOS.

5
benyamin

Un simple redémarrage a résolu le problème pour moi.

5
Amer Meer

Comme avec racl101 ( https://stackoverflow.com/a/49266114/3612595 ), ni la suppression du répertoire DerivedData ni le redémarrage de l'ordinateur n'ont résolu le problème.

Pour éviter de supprimer le trousseau de connexion, les éléments suivants ont résolu le problème pour moi:

  1. Fermer Xcode
  2. Modifier le mot de passe du trousseau de connexion (autre chose que le mot de passe actuel)
  3. Rouvrez votre projet Xcode et essayez de compiler à nouveau. Lorsque vous êtes invité à saisir votre mot de passe, sélectionnez "Toujours autoriser"

Répétez ce processus si vous souhaitez rétablir le mot de passe de votre trousseau de connexion à sa valeur d'origine.

2
FishSaidNo

Dans mon cas particulier, ni la suppression du répertoire DerivedData ni le redémarrage de mon ordinateur n'ont fonctionné.

Je crois que mes problèmes avant de rencontrer le Swift stdlib tool Error est né lorsque j'ai créé un profil d'approvisionnement Apple ID (gratuit)) lorsque j'ai été invité à saisir mon mot de passe système/racine par Xcode pour autoriser l'accès à une clé dans le trousseau et que j'ai entré mon mot de passe mais j'ai cliqué sur le bouton Autoriser.

Cela a amené Xcode à me demander à nouveau le mot de passe sans arrêt et peu importe combien de fois je l'ai entré, il ne l'accepterait pas. J'ai ensuite appuyé par erreur sur la touche Esc en supposant que Xcode avait accepté mon mot de passe la première fois, mais qu'il était tout simplement en panne.

Néanmoins, j'avais tort et à partir de ce moment-là, il ne m'a jamais demandé mon mot de passe pour accéder à ma clé de trousseau mais, à la place, chaque fois que j'essayais de le créer et de l'exécuter, je me plaignais du Swift stdlib tool Error erreur lorsque j'ai essayé d'exécuter mon application sur mon appareil iOS.

Pour résoudre ce problème, j'ai fait ce qui suit:

  1. Supprimé mon trousseau de connexion selon ce Apple: créer un nouveau trousseau de connexion, si nécessaire
  2. J'ai supprimé mon Apple ID (gratuit) profil de provisioning enregistré dans Xcode (c'est-à-dire Préférences> Comptes) car il est lié à mon ancien trousseau de connexion.
  3. Redémarré mon ordinateur.
  4. Recréé mon Apple ID (gratuit) profil d'approvisionnement (et cela vous invitera à nouveau pour votre mot de passe système à accéder à votre clé dans votre trousseau. Cette fois, entrez le mot de passe mais au lieu de cliquer sur le Autoriser cliquez sur le bouton Toujours autoriser. Je ne sais pas pourquoi cela fonctionne, mais cela a fonctionné.

Une mise en garde majeure à cette solution:

Si vous supprimez votre trousseau de connexion, votre ordinateur vous déconnectera de nombreuses applications sur lesquelles vous avez peut-être déjà enregistré des mots de passe. Par exemple, j'utilise le client d'application de messagerie Spark et cela m'a obligé à ressaisir les mots de passe de mon compte de messagerie individuel (Gmail), il m'a également déconnecté de l'application Evernote. Alors, soyez prévenu ! Néanmoins, ce n'était pas si grave pour ma cause, car je peux simplement me connecter encore. C'est juste ennuyeux au pire.

2
racl101

J'ai eu le même problème plus tôt dans la journée.

Je suis nouveau sur Xcode et Swift et je viens de commencer à expérimenter. Dans l'un des premiers tutoriels, il suggère de compiler pour un simulateur, puis d'essayer de compiler pour votre appareil.

Lorsque j'ai compilé pour mon appareil, il m'a demandé mon mot de passe de trousseau, la première fois que j'ai essayé, j'ai obtenu mon mot de passe incorrect, en supposant que ce n'était pas nécessaire, j'ai cliqué sur le refus d'accès au bouton du trousseau.

  • Utilisez un nouvel identifiant de bundle pour créer un nouveau certificat. Après ça
  • Entrez votre mot de passe de trousseau qui est votre mot de passe système par défaut
1
Ankit Rathi

Mon succès en 3 étapes:

1) redémarrer l'appareil

2) redémarrez Mac

3) supprimez le dossier/Users/ YOR-NAME /Library/Developer/Xcode/DerivedData/(répertorié dans votre erreur rapport)

1
OrdoDei