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

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'

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


当前回答

如果你正在为iOS7和Xcode5存档,并得到这些错误,请参考这个链接。苹果似乎放弃了可可豆荚所需要的架构 https://github.com/CocoaPods/CocoaPods/pull/1352

其他回答

在所有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安装完成。

尝试打开xcworkspace文件而不是xcodeproj文件

在这个问题中,如果你已经在你的系统中安装并更新了pod,那么你的Xcode无法找到Pods库。要解决此问题,请检查以下可能发生的原因:

您正在使用工作区。 构建Pods库。 Pods库在项目的产品组中被引用。 你的目标是在框架构建阶段的链接中包含Pods库。

如果你正在为iOS7和Xcode5存档,并得到这些错误,请参考这个链接。苹果似乎放弃了可可豆荚所需要的架构 https://github.com/CocoaPods/CocoaPods/pull/1352

在我的例子中,问题是Xcode的派生数据位置被设置为“Legacy”选项。CocoaPods目标(libpodds .a)正在正确地构建,但Xcode在错误的地方寻找它。

将其切换为“Unique”(默认值)解决了这个问题。你可以通过去首选项>位置,然后点击高级…按钮。