web-dev-qa-db-fra.com

dyld: la bibliothèque n'est pas chargée. Raison: aucune image appropriée trouvée

J'ai examiné un tas de réponses ici et aucune n'a résolu mon problème. 

J'ai un espace de travail Xcode avec un framework personnalisé et un projet d'application iOS. Le projet a bien fonctionné jusqu'à ce matin. Il se construit maintenant mais se bloque immédiatement:

dyld: Library not loaded: @rpath/ONCKit.framework/ONCKit
  Referenced from: /private/var/mobile/Containers/Bundle/Application/4DF67A3F-6255-4276-8812-8C742A363995/atero_t.app/atero_t
  Reason: no suitable image found.  Did find:
    /private/var/mobile/Containers/Bundle/Application/4DF67A3F-6255-4276-8812-8C742A363995/atero_t.app/Frameworks/ONCKit.framework/ONCKit: mmap() error 1 at address=0x100118000, size=0x000B8000 segment=__TEXT in Segment::map() mapping /private/var/mobile/Containers/Bundle/Application/4DF67A3F-6255-4276-8812-8C742A363995/atero_t.app/Frameworks/ONCKit.framework/ONCKit
    /private/var/mobile/Containers/Bundle/Application/4DF67A3F-6255-4276-8812-8C742A363995/atero_t.app/Frameworks/ONCKit.framework/ONCKit: mmap() error 1 at address=0x100280000, size=0x000B8000 segment=__TEXT in Segment::map() mapping /private/var/mobile/Containers/Bundle/Application/4DF67A3F-6255-4276-8812-8C742A363995/atero_t.app/Frameworks/ONCKit.framework/ONCKit

J'ai expérimenté avec les paramètres de construction toute la journée et je suis totalement perdu. 

11
olynoise

J'ai rencontré ce problème aujourd'hui et je l'ai résolu de la même manière. Révoquer et régénérer la signature de code résout ce problème. Mais pour faire la lumière sur le "pourquoi" de celui-ci.

Apple a décidé de modifier le contenu du certificat. Pour être plus précis, il a ajouté un nouveau champ "OU" (unité organisationnelle) sous Objet. En révoquant et en régénérant la signature de code, le champ manquant a été ajouté et les problèmes ont disparu.

11
BlitzHiryu

Si cela aide n'importe qui, aucune des solutions que je n'arrêtais pas de trouver sur le Web ne fonctionnait pour moi. J'ai tiré mes cheveux pendant deux jours et j'ai tout essayé. J'ai révoqué le cert interne, le nouveau profil d'approvisionnement, ajouté des fichiers à Embedded, etc.

Je ne pouvais pas comprendre ce qui n'allait pas avant de remarquer que, dans Keychain access, mes certs Apple WWDR et iOS Distributions étaient définis sur "Always Trust" au lieu de "Use Systems Default". J'ai rétabli mes certificats en "Use Systems Defaults" et tout est revenu à fonctionner comme il se doit. Je ne sais pas pourquoi ni comment cela fonctionne, mais c'est ce qui s'est passé.

12
Geoherna

Il s’avère que Xcode met en cache certains éléments spécifiques à un appareil qui peuvent être mélangés si vous exécutez vos applications sur plusieurs appareils. La solution simple consiste à supprimer le cache Xcode. La commande suivante le nettoie pour vous

rm -rf "$(getconf DARWIN_USER_CACHE_DIR)/org.llvm.clang/ModuleCache"
rm -rf ~/Library/Developer/Xcode/DerivedData
rm -rf ~/Library/Caches/com.Apple.dt.Xcode
7
Tarik

Nettoyer les données dérivées de Xcode

Lancer le Finder> Aller> Aller au dossier> Coller la ligne ci-dessous

~/Library/Developer/Xcode/DerivedData

Maintenant, redémarrez Xcode.

1
Mohit tomar

Juste pour les autres personnes qui, comme moi, rencontrent ce problème plus récemment et se demandent où et comment révoquer quelle entité de signature de code (c'est dans Préférences> Compte):

Tout fonctionnait bien pour moi aussi le matin. J'ai lu ailleurs sur le redémarrage. Ainsi, avant de passer par une autre longue session de profils de signature-identités de provisionnement, je viens de redémarrer ma machine. Et cela a réglé le problème apparemment sans qu'aucun effort supplémentaire ne soit nécessaire.

Swift, Xcode 7.3 sur OS X 10.11.4.

0
marco

Le simple fait de changer le profil de signature de code a résolu le problème. Aller à la cible. Puis sélectionné une option différente dans Général-> Signature-> Équipe

0
Asma Zubair