web-dev-qa-db-fra.com

dyld: Bibliothèque non chargée: @ rpath/libswiftCore.dylib sur Xcode 9 uniquement

J'ai récemment mis à niveau vers Xcode 9 à partir de 8.3.3.

Notre projet est écrit en Objective-C, comme tous les autres frameworks que nous utilisons. J'ai ajouté un framework écrit en Swift (version 3.0). Dans Xcode 8, je peux construire et exécuter le projet sans problème dans le simulateur et sur le périphérique. Dans Xcode 9, je ne parviens pas à exécuter le projet sur un simulateur ou un périphérique en raison de l'erreur suivante: 

dyld: Library not loaded: @rpath/libswiftCore.dylib
Referenced from: .../libraryname
Reason: image not found

Après le déclassement, j'ai pu relancer le projet.

Ma configuration a:

ALWAYS_EMBED_Swift_STANDARD_LIBRARIES = YES;
STRIP_Swift_SYMBOLS = NO;
Swift_VERSION = 3.0;
12
joe muoio

Il suffit de nettoyer et de résoudre ce problème. Testé dans Xcode 9.2 et Swift 4

1
xhinoda

Essayez de redémarrer Xcode. J'ai tout essayé et c'est ce qui a arrêté le problème.

0
doodle

Cela se produit principalement si les paramètres de confiance de votre certificat sont réglés sur "Toujours faire confiance". Changez-le en "Valeurs système par défaut" et recréez la construction. Cela devrait résoudre le problème: https://egeek.me/2017/10/21/code-signing-blocked-mmap-on-ios-device/

0
Vibin B. Nair

Après avoir lutté pendant plusieurs heures avec cette erreur et essayé différentes solutions, ma solution s’est avérée différente de celle d’autres ici, donc je l’ajoute aux autres personnes qui pourraient en bénéficier.

J'ai essayé: - ALWAYS_EMBED_Swift_STANDARD_LIBRARIES = YES - LD_RUNPATH_SEARCH_PATHS = $ (hérité) @ chemin_exécutable/Frameworks

Pas de chance. En fait, le problème était plus fondamental. Mon projet a plusieurs cibles de génération et, d'une manière ou d'une autre, les paramètres de l'application hôte ont été désactivés.  enter image description here

0
Chuck Krutsinger

Avait le même problème. J'utilise Xcode 9.2, Swift 4 et mon appareil fonctionne sous iOS 11.1.

Solution: 

J'ai supprimé l'autorité de certification Apple Worldwide Developer Relations dans Keychain Access et l'ai remplacée par une nouvelle (vous pouvez télécharger certificate ici )

Après cela, j'ai changé "Trust" (double-cliquez sur le certificat) de "Always Trust" à "System Default".

 

0
cinnamonlao

J'ai rencontré le même problème (sur Xcode 9.4.1), mais je n'ai pas pu le résoudre avec l'aide. J'ai rencontré un problème où Xcode continuait de m'inviter à utiliser mon trousseau mais ne parvenait pas à terminer la demande - bien que j'aie donné mon mot de passe. L'application construite avec succès et installée. Cependant, il s'est écrasé lors de l'exécution sur le périphérique immédiatement.

Voici ce qui a résolu mon problème.

  • Suppression de ma paire certificat/clé publique/clé privée
  • Création d'un nouveau certificat (via un CSR) et installation sur mon ordinateur
  • Lié le nouveau certificat au profil d'approvisionnement et installé le profil sur Xcode
  • Nettoyé la construction et supprimé la construction existante sur le périphérique
  • Hourra!!!

J'espère que cela aide quelqu'un qui cherche à travers la planète!

0
Ruchira Randana

Le framework Swift doit être construit avec la même version de Swift que votre projet (dans ce cas, Swift 4 de manière héritée depuis que vous avez mis à niveau et exécutez Xcode 9).

Reconstruisez et rajoutez/remplacez le cadre par la nouvelle version et cela devrait fonctionner.

0
Paul Popiel

Utilisez-vous Carthage et avez plusieurs XCode_s sur votre machine? J'ai eu un problème récemment lorsque j'ai exécuté carthage update --use-ssh --platform iOS alors que xcode8.3.3 était sélectionné dans la ligne de commande. Puis inclus les cadres construits dans la construction.

Pour que cela fonctionne dans XCode9, vous devez exécuter la commande switch Sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer pour votre Xcode.app et réexécuter carthage.

J'espère que ça aide.

0
Alex