错误“未find库”

我在将应用程序放入admob后出现错误。 昨天的应用程序工作正常,但今天它没有工作了..错误如下:

ld: library not found for -lGoogleAdMobAds clang: error: linker command failed with exit code 1 (use -v to see invocation) 

如何解决它? 谢谢 !!

有时您只需删除库的引用并再次添加引用。

除了再次从头开始添加Google Mobile Ads SDK和其他库之外,我build议您检查“ 库searchpath” 。 有些情况下,你复制或复制一个目标,Xcode决定它需要用“\”来转义任何双引号。确保你删除了所有的 – 它应该看起来像这样 –

在这里输入图像描述

我能够复制错误,做前缀我的path与多个“\”。

我有一个类似的“库未find”的问题。 但是,这是因为我不小心使用.xcodeproj文件而不是.xcworkspace文件。

如果错误与Cocoapods相关如下:

 library not found for -lPod-... 

您需要检查其他链接器标志并将其从中删除。

额外的信息:如果你有一个使用椰子树的老项目。 最近你需要添加use_frameworks! 到你的pod文件。 cocoapods不会将库添加到您的其他链接器标志,因为它的inheritance。 因此,您可能需要从使用use_frameworks之前添加的其他链接器标志手动删除这些标志!

对于我的情况Xcode 7 ,也在Xcode 9.1中工作

 ld: library not found for -ldAfnetworking clang: error: linker command failed with exit code 1 (use -v to see invocation) 

将“ Build Active architecture Only设置为“ Yes

在这里输入图像描述

select您的目标,进入"Link Binary With Libraries"中的".a" "Build Phases" "Link Binary With Libraries"删除该库的".a"文件。 清洁和build设。

如果错误如下

ld:找不到-lpods的库

我发现一个红色的文件“libPods.a”(如丢失的文件)是以某种方式在项目的框架组中创build的。 我只是简单地删除该文件,一切都很好。

编辑:另一个解决scheme

另一个解决scheme,我已经在类似的问题已经回答了这个链接

如果打开项目文件而不是工作区,也会发生这种情况。 我这样浪费自己一天的时间。

我知道这有点旧了,但是我碰到类似的问题,运行“pod update”为我解决了这个问题。 我的图书馆错误是与AFNetworking …

如果不在pod文件中使用显式版本,请小心地更新pod。

这个错误很奇怪。

我有-ldAfnetworking这个错误,我只复制我的项目在其他path和工作。

在我的情况下,有一个命名问题。 我的库被称为ios-admob-mm-adapter.a ,但Xcode的预期,名称应该以前缀lib开始。 我刚刚将我的lib重命名为libios-admob-mm-adapter.a并解决了这个问题。

我使用Cocoapods,并在我的目标的构build设置中链接库与其他链接器标志选项。 该标志看起来像-l"ios-admob-mm-adapter"

希望它可以帮助别人

我尝试重命名我的生成configurationReleaseProduction ,但显然cocoa豆不喜欢它。 我把它重新命名为Release ,而且一切都很好。

@拉罗拉的回答指出了我正确的方向。 我在“watchkitapp Extension / lib”path中包含库。 在这种情况下,库searchpath需要用'\'来转义,但是链接器似乎并不理解这一点。 为了修复/解决这个问题,我把我的libpath上移了一层,所以它不再位于名称中包含空格的目录中。

迟到的答案,但这里是我试过的东西的名单。因此,如果有人想要解决这个问题,它将在一个地方。

  1. 有效的架构= armv7 armv7s
  2. 仅构build主动架构=否
  3. 目标 – >生成设置 – >其他链接器标志= $(inheritance)
  4. 目标 – >生成设置 – >库searchpath= $(inheritance)
  5. 产品清洁
  6. 在terminal中更新Pod
 watchman watch-del-all; npm start -- --reset-cache 

似乎为我做…我发现我经常这样做时,一切都失败了