CocoaPods与XCode 6.0.1 - 如何修复出现红色的Pods框架?

Rya*_*egg 21 xcode ios cocoapods xcode6 ios8

我在Xcode 6.0.1中创建了一个新项目,并创建了以下Podfile:

source 'https://github.com/CocoaPods/Specs'
platform :ios, '8.0'

pod 'AFNetworking', '~> 2.0'
Run Code Online (Sandbox Code Playgroud)

然后我跑了pod install,在Xcode中打开了xcworkspace.当我构建项目时,所有框架都以红色显示.例如,在Pods项目下,Foundation.framework显示为红色,表示我的计算机上不存在的路径:

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk/System/Library/Frameworks/Foundation.framework
Run Code Online (Sandbox Code Playgroud)

我的问题是:如何让框架在导航器中以黑色显示,并将我的pod正确链接到我的主项目?

Xcode截图

我在这个问题的答案中提到了一些变化:

  1. 最初,libpods.a产品也以红色显示.我通过更改Per-configuration Build Products Path$(BUILD_DIR)/$(CONFIGURATION)解决其他人修复问题的方法.

  2. 我确保我的Base SDK在我能找到的所有目标上都是iOS 8.0.

  3. 我已经验证我的有效架构设置为"arm64 armv7 armv7.1",我可以找到所有目标.

H6.*_*H6. 16

我有一个同样奇怪的问题,在一台机器上正确识别的库,但在另一台机器上没有 - 在那里它们也是红色的.

解决方案是将Pods目标添加到构建方案中("Product> Scheme> Edit Scheme ..."然后添加+ Pods主目标并将其放在主目标前面.)然后cleanbuild项目.

  • 对我来说,这就是解决方案.这也是cocoapods网站上的官方故障排除解决方案:http://guides.cocoapods.org/using/troubleshooting.html (4认同)

eut*_*s87 3

这是正常的,因为 Pod 的项目路径中不存在这些框架。正如我在 tmpios->Frameworks 中看到的那样,它没有出现在任何应该存在的框架中。选择您的项目,然后 Target->tmpios->Build Phases->Link Binary With Libraries,然后添加您需要的框架。

如果仍然出现编译错误并且找不到 pod 库,则以这种方式编写 pod 文件:

source 'https://github.com/CocoaPods/Specs'
link_with  ['tmpios', 'tmpiosTests']
platform :ios, '8.0'

pod 'AFNetworking', '~> 2.0'
Run Code Online (Sandbox Code Playgroud)

安装 pod,并在项目 Target->tmpios->Build Settings->Other Linker Flags 中添加 $(inherited)。