架构是您想要构建的架构,有效的架构是您可以设想使用代码库构建的架构。
因此,也许您只想为armv7s构建二进制文件,但相同的源代码可以很好地编译为armv7和armv6。所以VALID_ARCHS = armv6 armv7 armv7s
,但是你设置了ARCHS = armv7s
因为这就是你的全部want使用您的代码进行构建。
或者,用苹果语来说:
ARCHS(建筑学)
以空格分隔的标识符列表。指定二进制文件所针对的体系结构(ABI、处理器模型)。当此构建设置指定多个架构时,生成的二进制文件可能包含每个指定架构的目标代码。
and:
VALID_ARCHS(有效架构)
以空格分隔的标识符列表。指定可以为其构建二进制文件的体系结构。在构建过程中,该列表与 ARCHS 构建设置的值相交;结果列表指定二进制文件可以运行的体系结构。如果生成的体系结构列表为空,则目标不会生成二进制文件。
Source: Xcode 构建设置参考 https://developer.apple.com/library/archive/documentation/DeveloperTools/Reference/XcodeBuildSettingRef/1-Build_Setting_Reference/build_setting_ref.html
在实践中,你离开VALID_ARCHS
独自一人,不用担心改变它,只是摆弄ARCHS
设置您想要构建的架构。通常,您将调试构建设置为NATIVE_ARCH
,因为您只想为要测试/运行它的机器构建调试版本,而发布版本则为您计划支持的所有体系结构构建。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)