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

时间:2014-06-06 09:33:57

标签: ios objective-c 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"

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

16 个答案:

答案 0 :(得分:91)

通过删除链接二进制文件中的-lPods-Projectname.a来修复此问题(对于较新版本,请删除框架组下的-lPods-Projectname.a)。

答案 1 :(得分:38)

每当我执行“pod install”时,它都会让我花几个小时修复与之相关的内容。所以,我删除了CocoaPods的东西,不再有问题了!现在我很幸运,很幸福。

答案 2 :(得分:21)

您可以尝试“仅构建活动架构”= YES。它可能正在解决问题。

答案 3 :(得分:20)

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

  • 删除-lyourlibname.a in" Link Binary with Libraries"在"建立阶段"你的目标。

答案 4 :(得分:19)

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

答案 5 :(得分:14)

确保项目/目标中的Build Active Architectures Only以及您的Pod / Target和Pod中的 border: 2px solid #123456; border-color: @some-named-colour-from-adwaita; 相同。 我们经常设置调试是,并设置版本号

答案 6 :(得分:12)

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

答案 7 :(得分:9)

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

  • 使用pod deintegrate解体可可豆荚。请检查此链接https://github.com/kylef/cocoapods-deintegrate
  • 搜索“pod”的目标和项目文件的构建设置。任何看起来都属于可可豆荚的东西都会移除。
  • 最后,再次运行pod install

答案 8 :(得分:6)

转到产品>方案>编辑方案...>构建> +>添加Pods-Projectname.a并将其拖到顶部>清洁&建立你的项目。

答案 9 :(得分:5)

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

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

  

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

     

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

所以我做了它告诉我的事情,我添加了$(inherited)标志来构建设置。一切运作良好

答案 10 :(得分:3)

当我不小心打开项目而非工作空间时,我遇到了这个问题,所以Cocoapods丢失了......

答案 11 :(得分:3)

检查您的项目 - >目标 - >构建阶段 - >链接二进制文件库

enter image description here

答案 12 :(得分:2)

指向您的Pods项目,将BaseSDK设置为iOS SDK,因为< pod安装'过程清除它。 同时将Build Valid Architecture Only设置为NO 这应该有用。

答案 13 :(得分:1)

我遇到了一个类似的错误,它在编译同一个项目时影响了我的一台计算机而不是另一台计算机。

我重新安装了cocoapods,所有的宝石,重建了这个项目,但没有一个工作。我终于得到它编译,但要求我完全删除Xcode和相关数据(iPhone模拟器,DerivedData),然后重新安装Xcode。

答案 14 :(得分:1)

添加新的构建配置后,我遇到了这个错误。

pod install有所帮助,因为它为每个构建配置添加了单独的设置。

答案 15 :(得分:0)

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

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

Podfile: platform :ios, '11.4'

enter image description here enter image description here