web-dev-qa-db-fra.com

ld: cadre non trouvé

J'essaie d'ajouter un cadre à mon projet IOS mais lorsque je construis, j'ai toujours le même message: 

ld: cadre non trouvé

clang: erreur: la commande de l'éditeur de liens a échoué avec le code de sortie 1 (utilisez -v pour voir l'invocation)

J'ai essayé de supprimer mon répertoire Pods puis d'exécuter pod install J'ouvre le .xcworkspace comme il est écrit dans les journaux de l'installation du pod, je nettoie le projet sous xcode, puis j'essaie de le construire, mais cela ne fonctionnera pas.

Mon podfile ressemble à ceci:

xcodeproj '/Users/guillaume/project/Mobile/iOS/FoodPin/FoodPin.xcodeproj'
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '8.0'
use_frameworks!
pod 'SwiftHTTP', '~> 0.9.2'

Ma version de xcode est 6.3.1

Je vous remercie,

171
Kaëris

Dans Project Navigator dans le dossier Pods j'avais un Pods.framework qui était en rouge. Il était également présent dans Linked Frameworks and Libraries. J'ai enlevé les deux références et l'erreur a disparu.

TL; DR

Supprimer Pods.framework dans:

  • Dossier nommé Pods
  • Linked Frameworks and Libraries
440
Arbitur

Cela est généralement dû au fait que le fichier .xcodeproj est ouvert au lieu de .xcworkspace.

Lorsque vous exécutez 'pod install' pour la première fois, il crée un fichier .xcworkspace, qui comprend votre fichier .xcodeproj d'origine et un projet Pods. Vous devrez fermer votre fichier .xcodeproj et ouvrir l’espace .xcworkspace.

Il s'agit d'un problème courant lors de la création d'un projet via le nouvel assistant de projet de Xcode. J'oublie souvent que je ne suis pas dans un espace de travail, indispensable pour que les Cocoapod soient correctement liés.

144
Chris Trevarthen

Xcode 9 ou 10

installer https://github.com/CocoaPods/cocoapods-deintegrate

pod deintegrate

puis 

pod install
64
Ted

J'ai effacé cette erreur en supprimant les fichiers .framework rouges situés dans un dossier Frameworks du project navigator. Je pense que cela a également automatiquement supprimé les entrées rouges correspondantes dans la section Linked Frameworks and Libraries des paramètres General.

J'ai nettoyé/réinstallé des modules afin de résoudre un autre problème. Peut-être que ces fichiers et entrées de structure rouges ont été simplement laissés par une installation précédente du pod?

44
theblang

Pour qui trouve ce problème. J'utilise NativeScript et j'ai la même erreur. 

Cela se produit car j'ai ouvert le fichier .xcodeproj, mais nous devons ouvrir le projet avec le fichier .xcworkspace.

22
calebeaires

Cela m'est arrivé après la mise à jour de mon fichier podfile et une mise à jour du pod.

Pour une raison quelconque, un fichier-cadre "Pods_ [ProjectName]". Apparaît sous mon projet sous "Cibles"> Général> Cadres et bibliothèques liés.

La suppression de cette information, puis le nettoyage/la reconstruction corrigeaient le problème.

15
Elliott Davies

vous devez supprimer votre projet de certains fichiers comme cette image.

 your should delete the pods.framework and pods mark red files

14
LingYFH

Je recevais cette erreur parce que je renommais mon projet et que je changeais également le nom du projet dans le fichier pod, mais que mon projet faisait référence à un ancien nom qui n'était pas là et causait cette erreur. Je m'en débarrasse par 

pod deintegrate

suivi par 

pod install
12
osama

J'ai eu un problème similaire à 

framework not found Pods_OneSignalNotificationServiceExtension

Il a été résolu en supprimant ce qui suit. Accédez à target OneSignalNotificationServiceExtension> Phases de construction> Lier le binaire aux bibliothèques et supprimer Pods_OneSignalNotificationServiceExtension.frameworkIt should be empty here. J'espère que cela t'aides. À votre santé.

12
Sharukh Mastan

Retirez simplement votre .framework de la liste "Votre projet-> Général-> Structure et bibliothèques liées". 

9
Md. Ibrahim

Dans mon cas, je peux le construire sur des appareils et sur un simulateur, mais j'ai les mêmes erreurs lors de l'archivage. Pour le résoudre, je dois 

  • supprimer Pods.framework
  • assurez-vous que Pods-<project-name>.framework est intégré

Vous trouverez les paramètres dans CIBLES -> Cadres et bibliothèques liés.

5
SeanChense

Vous êtes plus que probable que vous essayez de faire travailler les gousses dans votre projet, n'est-ce pas? Le seul moyen de le faire est de créer un projet séparé qui utilise CocoaPods. 

Fermez tous les espaces de travail que vous utilisez. 

Ensuite, assurez-vous que votre fichier Podfile est complètement prêt.

Dans la ligne de commande, où que se trouve votre fichier, tapez la commande suivante:

pod deintegrate

Ensuite, installez votre pod agian.

pod install or pod update

Vous pouvez maintenant utiliser le nouvel espace de travail de votre projet pour développer. Recherchez un fichier appelé .workspace. Utilisez ce fichier!

Voici un guide sur l'utilisation de CocoaPods

4
Emmanuel Mbaba

Étape 1

La première chose à faire est de supprimer le fichier Podfile, Podfile.lock, le dossier Pods et l’espace de travail généré. 

Étape 2

Ensuite, dans .xcodeproj, supprimez les références aux fichiers Pods.xcconfig et au fichier libPods.a. 

Étape 3

Dans l'onglet de projet Phases de construction, supprimez la section Vérifier les pods de contrôle (ouverte), la section de ressources de copie de pods (en bas) et les ressources de pods d'intégration (en bas). 

Étape 4

Supprimer Pods.framework.

La seule chose que vous voudrez peut-être faire est d'inclure certaines des bibliothèques que vous utilisiez auparavant. Vous pouvez le faire en glissant simplement dans votre projet les dossiers qui se trouvent dans les dossiers des modules (je préfère les placer dans mon dossier Fichiers de support).

Cela a fonctionné pour moi. 

3
A.G

Avec Xcode 8.3, la réponse acceptée ne fonctionnait pas pour moi. J'avais essayé beaucoup d'autres solutions, mais @ Elliott Davies répond que c'est ce qui a été résolu pour moi. J'ajoute une capture d'écran pour plus de clarté. Pour une raison quelconque, Xcode essayait de lier des configurations de fichiers pods précédentes qui n'existaient plus. Tout ce que je devais faire était de supprimer les références supplémentaires et tout fonctionnait bien . Screenshot of Xcode Linked Frameworks and Libraries

3
jbryant

Ce problème me rendait folle car cela est arrivé soudainement sans apporter de modifications au projet. J'ai essayé toutes les solutions suggérées dans ce fil (et d'autres connexes) et aucune d'entre elles n'a résolu le problème.

La seule chose qui diffère de mes autres projets (qui compile bien), c'est que le nom de ce projet contenait un accent (un accent français, "é"). J'ai renommé le projet et tous les fichiers associés, et cela a finalement fonctionné!

Peut-être est-ce lié à la mise à jour vers Xcode 10, car ce projet fonctionnait bien avant ...

EDIT: cela semble également échouer lors de l'utilisation d'un projet avec - dans le nom du projet…

2
AnthoPak

J'ai résolu ce problème en sélectionnant le projet téléchargé à partir de CocoaPods et en le construisant. Vous pouvez cliquer sur Gérer les modèles pour qu'il apparaisse dans la barre d'exécution. Ensuite, vous pouvez reconstruire votre projet. J'espère que ça vous aidera.

1
vinhsteven

C'est la façon dont je résous mon problème. et ça marche maintenant quand j'écris cette réponse:

Tout d'abord, j'essaie tous les moyens les plus corrects ci-dessus,

supprimer Pods_xxx.framework des bibliothèques de liens et du framework dans les phases de construction de la cible est utile, et le problème disparaîtra, mais le problème à venir est que je ne peux plus importer le fichier Pods.framework.

Et puis, j'essaie de réinitialiser la configuration de xcworkspace, afin de pouvoir comprendre le vrai problème. donc je cours

pod deintergate

puis réinstallez mon pod:

pod install

ce travail est parfait, mais le problème est toujours là, mais je pense que le vrai problème est que Pods_xxx.framworks ne soit pas compilé avec succès par le script de construction cocoapods. Je pense que c'est la vraie façon de résoudre le problème.

Enfin, j'essaie de modifier le schéma de mon projet:

 Pods scheme is not in edited 

et j’ajoute un système de pods à gérer:

 enter image description here 

et construisez ce Pods.framework séparément, et vous verrez que l’icône Pods.framework redevient véritablement:

 enter image description here 

et je pense que maintenant vous avez résolu votre problème de "framework non trouvé Pods_xxxx.framework" mais en fait j'ai un autre problème à venir:

 enter image description here 

donc je vais au paramètre de construction, et édite le "Framework Search Path" avec "${inherited}", et maintenant tous les problèmes disparaissent, bravo !!!! :)

 enter image description here 

1
Levine Veblen

Supprimer le dossier des cadres créé après l'installation ou la mise à jour du pod

0
Xcoder

Dû courir

pod deintegrate

Après cela, j'ai dû supprimer le fichier .xcworkspace et exécuter l'installation de pod.

0
Baki

J'ai résolu ce problème en faisant glisser le fichier .framework dans le Cadre lié et bibliothèques

Disons que je rencontrais ce problème à cause de l'erreur FIRAnalyticsConnector not found et que je glissais simplement le fichier FIRAnalyticsConnector.framwork dans Structure et bibliothèques liées et que mon problème était résolu

0
Sultan Ali

Dans mon cas, après avoir comparé la différence entre une branche que je savais construite correctement, j'ai remarqué cette ligne dans mon Podfile:

platform :ios, '11.0'

J'avais par inadvertance augmenté ma version cible de 10 à 11 alors que mes cibles dans Xcode restaient définies à 10. Le retour à 10 a résolu le problème.

Assurez-vous que vos versions iOS cibles sont correctement définies.

0
joels

Une autre chose qui a résolu mon problème est d'aller sous Cible -> Paramètres de construction -> Autre linker Drapeaux et supprimer le "cadre" et votre cadre "nom".

C'est arrivé quand j'ai essayé de retirer un pod.

0
atacand1920

Après avoir retiré et mis à jour le pod, j'avais toujours le même problème.

J'ai trouvé que le développeur précédent avait mis l'indicateur dans ' Paramètres de construction -> Autres drapeaux de l'éditeur de liens ' avec le nom de structure (dans mon cas -framework 'OGVKit') à l'origine du problème.

Après avoir supprimé cet indicateur, le projet est construit correctement.

0
Babac

J'ai essayé chaque réponse ici et aucune d'entre elles n'a fonctionné. J'ai fini par le faire fonctionner en faisant passer la cible de déploiement de 10,0 à 11,0. Je ne sais pas pourquoi cela a résolu le problème, mais je suppose que cela a à voir avec la mise à niveau vers Xcode 10.2.1.

0
Swindler

Si vous avez ouvert le fichier .xcworkspace et que vous avez toujours la même erreur:

delete all the contents of Pods directory and from command line write "pod install" to resolve the issue.
0
Alp Altunel

Veuillez vérifier votre fichier exécutable dans .Framework comme (enter image description here

  1. Le nom du fichier exécutable devrait ressembler à cela sans aucune extension.

  2. Certains frameworks montrant comme ceci enter image description here

  3. Utilisation du terminal goto .framework utiliser la commande ci-dessous lipo -create FrameworkName-x86_64 FrameworkName-armv7 FrameworkName-armv7s FrameworkName-i386 FrameworkName-arm64 -output FrameworkName

après avoir créé un seul fichier exécutable, supprimez ces fichiers enter image description here

0

J'ai rencontré ce problème car je n'avais pas défini la variable platform correctement.

Ainsi, dans mon application macOS, la plate-forme était configurée pour:

platform :ios

au lieu de

platform :osx
0
Besi