J'obtiens une erreur après avoir placé ma demande dans un AdMob. L'application fonctionnait jusqu'à aujourd'hui. L'erreur est la suivante:
ld: library not found for -lGoogleAdMobAds
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Comment puis-je réparer cela? Je vous remercie.
Réponses:
Parfois, vous supprimez simplement la référence de la bibliothèque et ajoutez à nouveau une référence.
Outre l'ajout du SDK Google Mobile Ads et d'autres bibliothèques à partir de zéro, je vous recommande de vérifier les chemins de recherche des bibliothèques . Il y a des cas où vous copiez ou dupliquez une cible, Xcode décide qu'il doit échapper tous les guillemets doubles "avec un '\'. Assurez-vous de supprimer tous les \ 's - cela devrait ressembler à ceci -
J'ai pu dupliquer l'erreur en préfixant mon chemin avec plusieurs '\'.
la source
J'ai eu un problème similaire de «bibliothèque non trouvée». Cependant, c'était parce que j'utilisais accidentellement le
.xcodeproj
fichier au lieu du.xcworkspace
fichier.la source
Sélectionnez votre cible, allez à
"Build Phases"
en"Link Binary With Libraries"
supprimer le".a"
fichier de cette bibliothèque. Nettoyez et construisez.la source
Si une erreur liée aux Cocoapods comme suit:
Vous devez vérifier les autres indicateurs de l'éditeur de liens et les supprimer de là.
la source
Pour mon cas Xcode 7 , a également travaillé dans Xcode 9.1
réglé
Build Active architecture Only
surYes
la source
Cela se produit si vous utilisez des cocoapodes, utilisez le
.xcworkspace
fichier au lieu du.xcodeproj
fichier par défaut .la source
Si l'erreur est comme suit
ld: bibliothèque introuvable pour -lpods
J'ai trouvé qu'un fichier "libPods.a" qui est de couleur rouge (comme les fichiers manquants) a été créé d'une manière ou d'une autre dans le groupe Framework du projet. J'ai simplement supprimé ce fichier et tout s'est bien passé.
EDIT: une autre solution
Une autre solution à laquelle j'ai déjà répondu dans la question similaire est dans ce lien
la source
goto Build Phases -> Lier le binaire avec les bibliothèques et supprimer la bibliothèque qui affiche des erreurs car cette bibliothèque n'est pas disponible dans le dossier du projet
la source
libPods-Foo BarTests.a
et une autre nomméelibPods-FooBarTests.a
.Cela peut également se produire si vous ouvrez un fichier de projet au lieu d'un espace de travail. J'ai perdu moi-même une journée de cette façon.
la source
En retard pour la réponse, mais voici la liste des choses que j'ai essayées, donc ce sera au même endroit si quelqu'un veut essayer de résoudre le problème.
la source
Dans mon cas, il y avait un problème de dénomination. Ma bibliothèque a été appelée
ios-admob-mm-adapter.a
, mais Xcode s'attendait à ce que le nom commence par le préfixe lib . Je viens de renommer ma bibliothèque enlibios-admob-mm-adapter.a
et de résoudre le problème.J'utilise Cocoapods, et il lie les bibliothèques avec l' option Autres indicateurs de l'éditeur de liens dans les paramètres de construction de ma cible. Le drapeau ressemble à
-l"ios-admob-mm-adapter"
J'espère que ça aide quelqu'un d'autre
la source
Simplement, il
GoogleAdMobAds.a
manque dans la cible du projet. Pour moi, c'étaitlibAdIdAccessLibrary.a
s'il vous plaît vérifier la capture d'écran ci-jointela source
Quant à moi, ce problème se produit parce que j'ai installé la bibliothèque de matériaux pour IOS. pour résoudre ce problème
1: Accédez aux paramètres de création de votre application cible.
2: Rechercher d' autres indicateurs de l'éditeur de liens
3: Ouvrez les autres indicateurs de l'éditeur de liens et recherchez la bibliothèque mentionnée dans l'erreur.
4: supprimez ce drapeau.
5: Nettoyez et construisez.
J'espère que cela résoudra votre problème.
la source
Dans le cas où
ld: library not found for -{LIBRARY_NAME}
cela s'est produit car le ou les fichiers de bibliothèque n'existent pas.Le chemin du ou des fichiers de bibliothèque doit être en fonction du chemin réel par exemple si votre ou vos fichiers à la racine du projet vous devez définir le chemin comme
$(PROJECT_DIR)
la source
Je sais que c'est un peu vieux, mais je viens de rencontrer un problème similaire et l'exécution de 'pod update' a corrigé cela pour moi. Mon erreur de bibliothèque était avec AFNetworking ...
Faites juste attention à faire la mise à jour du pod si vous n'utilisez pas de versions explicites dans votre fichier pod.
la source
Cette erreur est très étrange.
J'ai eu cette erreur avec -ldAfnetworking et je ne copie mon projet que dans un autre chemin et fonctionne.
la source
J'ai essayé de renommer ma configuration de construction
Release
enProduction
, mais apparemment, les cabosses de cacao ne l'aiment pas. Je l'ai renommé à nouveauRelease
, et tout se construit très bien.la source
La réponse de @ raurora m'a orienté dans la bonne direction. J'incluais des bibliothèques dans mon chemin "watchkitapp Extension / lib". Dans ce cas, le chemin de recherche de la bibliothèque devait être échappé avec un '\', mais l'éditeur de liens ne semblait pas le comprendre. Pour résoudre / contourner le problème, j'ai déplacé mon chemin de bibliothèque d'un niveau vers le haut afin qu'il ne soit plus dans un répertoire contenant un espace dans le nom.
la source
Je viens de mettre à jour le fichier pod 'pod update' et cela commence à fonctionner normalement pour moi.
la source
L'exécution de 'pod update' dans mon projet a résolu mon problème avec l'erreur 'Library not found for -lSTPopup'.
Remarquant la réponse de Trevor Panhorst:
"Faites juste attention lors de la mise à jour du pod si vous n'utilisez pas de versions explicites dans votre fichier pod."
la source
Solution simple. Voici comment résoudre le problème:
platforms/ios
pod install
C'est tout. Cela devrait installer la bibliothèque manquante.
la source
Parti...
la source
C'est une erreur de compilation pour un
Static Library
qui est causée parStatic Linker
Vous pouvez obtenir l'erreur
Library not found for
lorsque vous n'avez pas inclus de chemin de bibliothèque vers leLibrary Search Paths
ld
signifieStatic Linker
qui ne peut pas trouver un emplacement de la bibliothèque. En tant que développeur, vous devez aider l'éditeur de liens et pointer leLibrary Search Paths
Vous pouvez également obtenir cette erreur si vous ouvrez pour la première fois un nouveau projet (
.xcodeproj
) avec le support Cocoapods, exécutezpod update
. Pour résoudre ce problème, fermez simplement ce projet et ouvrez un espace de travail créé à la place (.xcworkspace
)la source
J'obtenais des bogues similaires sur la bibliothèque non trouvés. En fin de compte, c'est ainsi que j'ai pu le résoudre
la source