在新的 XCode5 中构建我的项目时,我收到以下警告:Pods-App 作为 'libPods-App.a' 的隐式依赖被拒绝,因为它的架构 'i386' 不包含所有必需的架构 'x86_64'。
7 回答
要解决此问题,请在左侧菜单中选择Pods项目,然后在目标部分下选择Pods-#YourAppName#目标,然后在构建设置中单击架构并按删除,使其转到默认选项(标准架构(armv7 , armv7s)。更多信息可以在这个链接中找到。
没有其他答案对我有用。
最终为我解决的问题是确保Build Active Architecture Only
在我的应用程序的 xcodeproj 文件中将 Debug 设置为 Yes,Release 设置为 No。
另外,因为我有自定义配置,我必须在 Podfile 中添加以下内容:
xcodeproj 'MyApp.xcodeproj', 'MyDebugConfiguration' => :debug, 'MyReleaseConfiguration' => :release
看看这里的博客文章,它会做的工作。
要使您的应用程序兼容 iPhone 5s 和旧型号(直到运行 iOS6 的 iPhone 3Gs),请为您的架构选择以下选项 - “标准架构 - armv7、armv7s”。不要选择“标准架构(包括 64 位)...”的选项。由于 Arm 指令集是向后兼容的,因此为 armv7s 编译的任何应用程序也将在 iPhone 5s 或 iPhone 5c 上运行。
ARCHS = armv7 armv7s
对于构建设置中的有效架构,您可以指定 arm64、armv7、armv7s。
VALID_ARCHS = armv6 armv7 armv7s arm64
环境:
- CocoaPods v0.24.0
- 来自 App Store 的 Xcode 5
在 Podfile 的末尾添加以下内容。
post_install do |installer|
installer.project.targets.each do |target|
target.build_configurations.each do |config|
config.build_settings['ARCHS'] = "$(ARCHS_STANDARD_INCLUDING_64_BIT)"
end
end
end
转到项目“pods”,将“仅构建活动架构”设置为 NO 以进行调试。
以上解决方案对我有用。
我刚刚将我的一个项目升级到 Xcode 6 并遇到了这个问题。为了修复它,我将 Pods 项目的 Base SDK 更改为真实的(以前它就像未知的 SDK)。
我有同样的问题。警告表明未包含 pod 库,因此应用程序无法完成编译。(它抱怨缺少属于 Pod 依赖项的头文件)。
如果您遇到相同的编译问题,您可以使用以下方法解决它:
- 在工作区中选择 Pods 项目
- 选择 Pods 项目以访问 Pods 项目范围的设置
- 转到构建设置
- 搜索“仅构建活动架构”
- 设置为“否”
这似乎对我有用,但 YMMV。