web-dev-qa-db-fra.com

Xcode: ld: bibliothèque introuvable pour -lAFNetworking

Pour cette raison, la construction échoue toujours ... Des idées sur ce que je pourrais essayer?

 Because of this one reason, build always fails...Any ideas about what I could try?

EDIT: la solution consiste à ouvrir xcworkspace au lieu de xcproject!

31
Akbapu

Vous ouvrez peut-être un fichier .xcodeproj après avoir installé les pods. Fermez le projet et ouvrez le fichier .xcworkspace.

63
Jagdeep Singh

Avoir le même problème.

Ce que j'ai fait avec l'aide de https://premium.wpmudev.org/forums/topic/anybody-solved-this-linker-command-failed-with-exit-code-1 et d'Adlair Cerecedo-Mendez

  1. Supprimez le projet "Pods" sur le panneau de gauche de Xcode. 
  2. Fermez Xcode et supprimez également ce fichier dans le Finder.
  3. Installez à nouveau les pods.
  4. Ouvrez Xcode et nettoyez.
  5. Vérifiez que l'option de construction "Construire l'architecture active uniquement" est définie sur "NON" pour votre projet, mais également pour votre projet Pods (sélection avec panneau de gauche).
  6. Cliquez sur le schéma de votre projet (en haut, près du bouton d'arrêt) et sur "Gérer le schéma". 
  7. Vérifiez, sélectionnez toutes vos bibliothèques de pods et fermez-les.
  8. Ensuite, pour toutes les bibliothèques, sélectionnez-les (faites défiler la liste) et générez-les manuellement pour l'architecture sélectionnée.

Chaque fois que vous modifiez votre architecture (simulateur, périphérique ou pour archivage (périphérique générique iOS)), vous devez suivre l’étape ci-dessus: c’est-à-dire créer manuellement chaque bibliothèque en les sélectionnant un par un dans votre liste de défilement. projet principal.

Cela semble un peu WTF, mais c’est le seul moyen de résoudre ce problème ...

18
myz

J'ai eu ce problème plusieurs fois avec les bibliothèques PODS.

Voici quelque chose que vous pouvez essayer:

  1. Exécutez à nouveau pod cache clean --all et pod install.

  2. Vérifiez vos chemins de recherche d'en-tête et de bibliothèque, supprimez toutes les entrées et placez $ (PROJECT_DIR) en mode récursif et $ (hérité) en tant que deuxième entrée.

  3. Accédez aux paramètres de construction de votre cible -> Autres drapeaux de l'éditeur de liens -> double-cliquez sur l'icône. Ajoutez $ (hérité) à une nouvelle ligne.

16
Hernan Arber

Je pense à deux possibilités:

1) Installer cocoapods-deintegrate projet:

$ gem install cocoapods-deintegrate

Ensuite, exécutez $ pod deintegrate, après cela, exécutez à nouveau $ pod install. Si ça ne marche pas, alors ...

2) Vous pouvez essayer d'ouvrir votre projet Pods et créer un nouveau schéma pour la cible dont vous avez besoin, dans ce cas pour AFNetworking.

Une fois la bibliothèque statique créée, ajoutez-la à vos références Frameworks dans votre projet principal.

J'espère que cela pourra aider.

12

Assurez-vous que Build Active Architecture Only est défini sur NO dans les paramètres du projet Pods.

9
Juan de la Torre

J'ai rencontré cette erreur lorsque j'ai téléchargé du code depuis github. J'ai essayé de construire le fichier .xcodeproj mais il a échoué en donnant une erreur à la bibliothèque non trouvée. J'ai ensuite ouvert le fichier .xcworkspace et je l'ai d'abord créé en cliquant sur Produit -> Construire pour -> Exécuter. Le fichier d'espace de travail est bien construit sans erreur. Ensuite, dans le fichier d'espace de travail, j'ai changé de schéma pour le projet xcode que j'essayais de construire et j'ai cliqué sur Produit -> Exécuter. L'application s'est construite et fonctionne sans erreur.

2
Haris ur Rehman

J'ai eu ce problème lors de l'utilisation de fastlane avec un projet ReactNative. J'avais ajouté une dépendance qui nécessitait des cocoapodes. 

Mon fichier rapide ressemblait à ceci:

...
gym(
  scheme: "AppName",
  project: "./ios/AppName.xcodeproj"
)
....

Et il a fallu le changer pour l'espace de travail comme ceci:

...
gym(
  scheme: "AppName",
  workspace: "./ios/AppName.xcworkspace"
)
...
2
Ken Stipek

J'ai dans le projet-> CIBLES-> Phases de construction -> Lier binaire avec bibliothèques un cadre "extra" qui reste du projet récent Délayer et tout se passe bien 

2

Un problème similaire ... a mis du temps à comprendre que j'avais mis à jour la "cible de déploiement iOS" de mon application pour iOS 9.0, mais la "cible de déploiement iOS" du projet Pods était toujours iOS 8.0 !!!

1
Chris Allinson

Pour moi, tout ça ne m'aide pas. Supprimer uniquement dans le projet de paramètres de construction.

 enter image description here

0
AndrewSas

Utilisez le xcworkspace pour construire au lieu du xcproject?

Cela se produit généralement lorsque vous utilisez Cocoapods et que vous construisez à partir du xcproject qui ne connaît pas les bibliothèques de cocoapod.

0
Fokou Franklin

ouvrez xcode, en haut à gauche, sélectionnez la bibliothèque de pod affichée comme étant introuvable. Utilisez 'Commande B' pour construire ce pod, puis sélectionnez à nouveau votre schéma cible et exécutez-le.

Pour moi cela a résolu le problème.

0