项目'Pods'被拒绝作为'Pods.framework'的隐式依赖项,因为它的体系结构不包含所有必需的体系结构

Ars*_*hin 28 cocoapods xcode8

项目'Pods'的目标'AAA-Pods'被拒绝为'Pods_AAA.framework'的隐式依赖项,因为其架构'x86_64'不包含所有必需的架构'i386 x86_64'.

这显示为警告,然后出现链接器错误.

Ars*_*hin 61

可能解决方案

  1. 使用.xc ...文件打开Xcode项目(cocoapods项目).
  2. 在项目导航器中选择Pods项目(左侧的蓝色图标).
  3. 在"项目"下,确保选中"窗格"(蓝色图标).
  4. 导航到"构建设置".
  5. 仅设置构建活动架构=否(用于调试和发布).
  6. 可选:将base sdk设置为最新的iOS(或选择首选平台/版本).

注意:此解决方案为我解决了此问题(警告和链接器错误).

建议资源:

Github项目:https://github.com/CocoaPods/CocoaPods/issues/2053 Github Pull请求:https://github.com/CocoaPods/CocoaPods/pull/1352

  • 默认情况下,pod生成应将其设置为"No".它每次都是我 (2认同)

Ben*_*idt 26

对于未来的Google员工:还要确保您的podfile定位到项目所针对的相同iOS版本:

例如,如果您在Xcode项目中定位iOS 10.0,则podfile也应包含platform :ios, '10.0'在顶部.


Che*_*-Yi 6

在关于Xcode 9.4.1的一个非常新的项目中,问题是我的Podfile的部署目标设置为platform :ios, '11.0'我的项目的iOS部署目标设置为10.3.

这导致生成的Pods项目以iOS 11.0为目标(仅受arm64架构上的64位设备支持),但由于我的主项目目标是10.3并包含armv7设备,因此在归档版本构建时也不起作用本质上构建非活动体系结构(除非您仅支持iOS 11设备).

然后修复只是简单地更改Podfile的部署目标以匹配您的主项目,就我的情况而言platform :ios, '10.3'.然后,运行pod update并重新生成Pods项目.启动Xcode,执行干净,您应该能够运行存档过程.