我存档一个项目时出错了。这就是我的环境。

Mac OS Lion Xcode 4.3.1 iOS SDK 5.1

项目部署目标为:

IPHONEOS_DEPLOYMENT_TARGET 3.2

错误显示:

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

我猜Pods就是我用来管理XCode项目依赖的CocoaPods。 https://github.com/CocoaPods/CocoaPods

这是我的Podfile

platform :ios  
dependency 'libPusher', '1.1'

我不确定这个错误是什么意思?


当前回答

我也有,Cocoapods版本0.28.0

这里很简单,不需要冗长的阅读: -卸载Cocoapods(命令行或AppCode) -删除Podfile, Podfile。锁,Pods文件夹

重新安装Cocoapods 启动新创建的工作空间。

其他回答

在所有pod中只使用_active_arch =NO解决了我的问题。为了让它持久,我在Podfile中添加了一个post_install钩子:

post_install do |installer_representation|
  installer_representation.project.targets.each do |target|
      target.build_configurations.each do |config|
            config.build_settings['ONLY_ACTIVE_ARCH'] = 'NO'
      end
  end
end

Pod安装完成。

我今天也遇到了类似的问题。

我建立了一个新项目 我安装了可可荚 我创建了一个新的配置预览以及现有的调试和发布 现在,当在这个新的预览配置上编译时,编译器将无法链接到Pods并给我这个消息: ld:没有为-lPods找到库

解决方案:

我要做的就是逃跑

 pod install

从而为新的Preview配置配置cocoapods。它更新了我的项目、工作区和Pod的项目文件,问题就消失了

我使用旧的cocoapod版本后更新了cocoapods,它建议我更新我安装的pod,因为我更新了很长一段时间。我更新了它,新版本pod更新得很好。但在那之后,我得到了像库没有找到-lPods-xxxprojectName-xxxxxpodName这样的错误

在尝试了这么多的解决方案后,给出的答案在这个thrred,这不是为我工作。然后我去我的项目设置,发现豆荚路径是改变,这是在其他链接标志

检查你的管理方案,以获得正确的pod名称,并在其他链接标志中进行比较,如果不相似,请更改它

旧吊舱路径是l -“lpods - xxxprojectnaxxxxpodname”

但是新的pods只有xxxxxpodName,所以我用新的替换了其他链接标志,如下所示

改为pod路径-l"xxxxxpodName",它是有效的。

我不知道这背后的完美原因,但这可能会帮助一些人。

我确实打开了工作区,但得到了同样的错误。

Build Active Architecture Only设置为YES

解决我的问题。

我厌倦了所有的答案,最后我能够通过添加pod库到Xcode构建方案来修复它,在我能够运行它之后,试图从构建方案中删除这个,但它仍然为我工作良好。我想不出确切的原因。