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

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'

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


当前回答

重命名some_project。工作空间文件到some_project.workspace。备份并运行$pod install。它创建了一个新的工作空间文件,错误就消失了。

其他回答

您是否打开工作区(由CocoaPods生成)而不是xcodeproj?

我在存档提交时也遇到了同样的问题。 关于这个问题的讨论可以在这里找到:https://github.com/CocoaPods/CocoaPods/issues/155

总之,有两种方法适合我:

将“首选项->位置->高级”设置为“自定义(相对于工作空间)”或 设置Podfile为- platform:ios,:deployment_target => "5.0"

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

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

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

我将项目从“伙伴”重命名为“NBSelector”。

在重命名项目后,我有“libPods-Partners未找到库”错误。Xcode试图链接到旧的合作伙伴。一个文件。只要删除它,如果你有podInstalled重命名后。