The Architecture parameter of Xcode, xcodearchitecture
Currently, iOS apps are basically compiled using llvm. Xcode also provides various settings to help you set compilation parameters. There is an item in it that sets the compiled Architecture. The parameters involved include ubuntures, Valid ubuntures, and Build Active Architecture Only.
Some new users often do not know how to choose these parameters. Here is a brief introduction.
Ubuntures: This indicates the instruction set you want to support, such as armv7 and armv7s, or $ (ARCHS_STANDARD_32_BIT ).
Valid ubuntures: indicates the instruction set to be compiled.
Build Active Architecture Only: whether to compile Only the applicable instruction sets of the current device (if this parameter is set to YES, if you use iPhone 6 for debugging, a Binary program that supports arm64 instruction sets is generated; if you use iPhone4 to compile and finally generate a Binary program that supports the armv7 instruction set, set YES in DEBUG mode and set RELEASE to NO)
Here, the final supported instruction sets are the intersection of ubuntures and Valid ubuntures.
In addition, list the instruction sets of common iOS devices:
ARMv8/ARM64: iPhone 6 (Plus), iPhone 5S, iPad Air (2), Retina iPad Mini (2, 3)
ARMv7s: iPhone 5, iPhone 5c, and iPad 4
ARMv7: iPhone 3GS, iPhone 4, iPhone 4S, iPod 3G/4G/5G, iPad, iPad 2, iPad 3, iPad Mini
ARMv6: iPhone, iPhone 3G, iPod 1G/2G