94 votes

Comment résoudre le problème "La commande /bin/sh a échoué avec le code de sortie 1" dans l'iphone ?

J'ai utilisé une bibliothèque statique de cacao dans mon application. Lorsque je compile ma bibliothèque, j'obtiens l'erreur suivante :

Shell Script invocation error:can't open input file:
/Users/sijuthomas/Library/Developer/Xcode/DerivedData/SCXML2-
    bbttehupryhijphhjdiemcytkvgy/Build/Products/Debug-iphonesimulator/
    libSCXMLParser.a (No such file or directory)
Command /bin/sh failed with exit code 1

Screenshot for error

Comment puis-je réparer cela ?

0voto

FullMetalFist Points 209

Je vais énumérer les choses que j'ai faites qui ne fonctionne pas pour moi et enfin qu'est-ce que

Tout d'abord, la réponse acceptée consistant à exécuter script uniquement lors de l'installation ne fonctionnait pas.

La suppression des données dérivées n'a pas fonctionné.

Ce qui a marché :

  1. J'ai ajouté une nouvelle phase de construction dans Phases de construction

  2. Nouvelle phase des fichiers de copie

  3. Faites glisser et déposez le cadre choisi dans la cible de dépôt.

  4. Définissez la "Destination" sur Frameworks

Le crédit est dû à Le post Medium de Kevin Le

0voto

rgkobashi Points 856

Pour ceux qui ne veulent pas décocher cette option (en utilisant cocoapods par exemple), le problème peut venir du certificat/clé.

Xcode (ou tout autre outil que vous utilisez, comme un outil de ligne de commande) doit être capable d'utiliser le certificat/la clé du trousseau. Pour cela, ouvrez le trousseau de clés, localisez le certificat que vous souhaitez utiliser (généralement sur login porte-clés, My Certificates ), cliquez avec le bouton droit de la souris sur la clé, sélectionnez Get Info cliquez sur Access Control et ajoutez l'application à la liste.

Si cela ne fonctionne pas, essayez de déverrouiller le trousseau de clés.

Une autre option peut être de sélectionner Autoriser toutes les applications à accéder à cet élément au lieu d'applications spécifiques et/ou déplacer le certificat/la clé vers System qui est partagé entre tous les comptes d'utilisateur sur ce Mac.

Vérifiez également que le certificat n'est pas expiré.

0voto

sumit rathore Points 83

1) option : Please check run the script only when installing......  it is right to answer of this question

2) option : mise à jour du pod, nettoyage des données dérivées,

0voto

Haseeb Iqbal Points 304

Dans mon cas, l'un des script (relatif à la SwiftGen ) échouait lors de la compilation.

J'ai résolu le problème en supprimant le Pods et les mettre à jour à nouveau.

  1. Retirer la cosse problématique sous Pods ou utiliser pod deintegrate
  2. Installer / Mettre à jour les pods en utilisant pod install o pod update

P.S. Il est possible que votre dépendance soit Global et ne soit pas dans les pods. Dans ce cas, vous pouvez également essayer de réinstaller cette dépendance.

0voto

Nichlas tm Points 11

LISEZ CE QUI SUIT SI VOUS UTILISEZ Crashlytics ET AVEZ CE PROBLÈME...

J'avais le même problème que ci-dessus Command /bin/sh failed with exit code 1 plus spécifiquement [31merror: Could not fetch upload-symbols settings: An unknown error occurred fetching settings.[0m

La première solution (activer l'exécution de script uniquement lors de l'installation) m'a permis de construire ma cible dans le simulateur, mais je n'ai pas pu archiver ma construction.

J'ai résolu ce problème d'archive en activant Crashlytics sur firebase. Je suis encore habitué à Fabric où Crashlytics est automatiquement activé. Une fois que j'ai activé Crashlytics dans la console firebase pour le GoogleService-Info.plist correspondant, j'ai pu archiver sans cette erreur.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X