Cocoapods ld:找不到-lPods-Projectname的库

Eug*_*kov 48 objective-c ios cocoapods

我已经通过它安装了可可豆荚库和一些框架.现在当我编译项目时,构建失败了.

错误:ld:找不到-lPods-Project clang的库:错误:链接器命令失败,退出代码为1(使用-v查看调用)

这里是部分文字:

Ld /Users/polzovatel/Library/Developer/Xcode/DerivedData/Project-bybevfqrgvqqldbzsgewqafpmylj/Build/Products/Debug-iphonesimulator/Project app/Project normal i386
    cd /Users/polzovatel/Projects/iOS-master/Project_iPhone
    export IPHONEOS_DEPLOYMENT_TARGET=6.0
    export PATH="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin"
Run Code Online (Sandbox Code Playgroud)

我需要做些什么来解决这个问题?

Eug*_*kov 91

通过删除固定它-lPods-Projectname.a链接二进制(较新的版本,删除-lPods-Projectname.a了下框架组).

  • 我在哪里找到这个?:/ (2认同)

Ram*_*mis 40

每当我执行"pod install"时,它都会让我花几个小时修复与之相关的东西.所以,我删除了CocoaPods的东西,不再有问题了!现在我很幸运,快乐的男人.

  • 仅仅6个星期之后,我又回到这里再次寻找为什么一个目标莫名其妙地失败了"ld:找不到-lPods-AFNetworking的库",而另一个基本相同的目标成功了. (5认同)
  • 我同意你的观点...... CocoaPods中有太多可移动的部件.成本/收益比非常糟糕.大多数情况下,我们花费更多时间修复CocoaPods问题,而不是简单地将源文件复制/粘贴到我们的项目中.CocoaPods在某种程度上被认为是"最先进的",因此很难避免,但对于私人项目,我可能会跳过它.所以你必须不时地手动更新源代码,但那又怎样呢?另一方面,代码不会一直随机破坏. (5认同)
  • 我不得不承认,我每隔几个月就会遇到类似的愿望. (4认同)
  • 我也是.但是......如果我们不能谁谁可以;) (2认同)

mca*_*ach 21

您应该删除libs的确切位置是:

  • 在目标的"构建阶段"中删除"链接二进制文件库"中的-lyourlibname.a.


ayb*_*ars 21

您可以尝试"仅构建活动架构"= YES.它可能是解决问题.

  • 关键点是Pod和Project目标的“仅构建活动体系结构”设置相同。对于调试,通常为是,对于发布,通常为否 (2认同)

sky*_*der 19

确保Build Active Architectures Only项目和Pods项目的设置对于调试和发布配置是相同的!这是我的问题.

  • 你是一位神仙先生. (2认同)
  • 这也是我的问题.一旦我设置我的项目以匹配"仅构建活动架构"的Pods项目设置,它就可以工作了. (2认同)

jie*_*ede 14

确保Build Active Architectures Only您的项目/目标和您的Pod/Target和Pod是相同的. 我们经常设置调试yes并设置版本号.

  • 这对我来说是个问题.Pods项目在调试模式下具有"仅构建活动体系结构"= YES. (3认同)

Mic*_*lle 12

我意识到打开了xcproject文件而不是更新的工作区.这解决了我的错误.希望这些信息也能帮助他人.

  • 作为cocoapods的新手,我甚至没有意识到我应该打开xcworkspace而不是xcproject.现在这似乎很明显,但从我读过的cocoapods指南来看,这真的不是很明显. (2认同)
  • 就是这样!祈祷。 (2认同)

Hot*_*day 9

如果其他答案都没有帮助您,请尝试以下方法:

  • 使用可分解的可可豆荚pod deintegrate.点击此链接https://github.com/kylef/cocoapods-deintegrate.
  • 搜索"pod"的目标和项目文件的构建设置.任何看起来像是可可豆荚的东西都会移除.
  • 最后,pod install再次运行.


Ela*_*lad 6

转到产品>方案>编辑方案...>构建> +>添加Pods-Projectname.a并将其拖到顶部>清理和构建项目.


MNa*_*sar 6

我有非常不同的经历。我尝试从构建设置中删除该库,但无济于事。老实说,我看不出其背后的逻辑。

我所做的就是尝试一个新的pod install。所以这给了我这个错误

[!] ProjectName [Debug]目标将覆盖Pods / Target支持文件/Pods-/Pods-.debug.xcconfig中定义的LIBRARY_SEARCH_PATHS构建设置。这可能会导致CocoaPods安装出现问题-使用该$(inherited)标志,或者-从目标中删除构建设置。

[!] ProjectName [Release]目标将覆盖Pods / Target支持文件/Pods-/Pods-.debug.xcconfig中定义的LIBRARY_SEARCH_PATHS构建设置。这可能会导致CocoaPods安装出现问题-使用该$(inherited)标志,或者-从目标中删除构建设置。

所以我做了它告诉我的事情,我添加了$(inherited)标记以建立设置。而且一切正常

  • 解决了我的问题。 (2认同)

Chr*_*her 5

就我而言,我发现项目(iOS 11.4)与目标(iOS 10.3)的部署目标不匹配。将目标更新到 iOS 11.4 解决了该问题。

项目 > 信息 > 部署目标 > iOS 部署目标
项目 > 目标 > 常规 > 部署目标 > 目标

播客文件: platform :ios, '11.4'

在此处输入图片说明 在此处输入图片说明