Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

iPhone doesn’t support any of app’s architectures. You can add arm64e architecture to app's Architectures build setting

Tags:

xcode

ios

xcode9

I’m on Xcode 9. I just got my iPhone XS Max. I tried to install my app onto it.

I kept getting

iPhone doesn’t support any of app’s architectures. You can add iPhone’s arm64e architecture to app’s Architectures build setting.

enter image description here

Build Settings

enter image description here

How can I prevent this error?

like image 384
code-8 Avatar asked Sep 24 '18 14:09

code-8


People also ask

What is arm64e on iPhone?

The arm64e architecture introduces pointer authentication codes (PACs) to detect and guard against unexpected changes to pointers in memory.

What is arm64 architecture in iOS?

arm64 is the current 64-bit ARM CPU architecture, as used since the iPhone 5S and later (6, 6S, SE and 7), the iPad Air, Air 2 and Pro, with the A7 and later chips. armv7s (a.k.a. Swift, not to be confused with the language of the same name), being used in Apple's A6 and A6X chips on iPhone 5, iPhone 5C and iPad 4.

Is iOS an arm64?

While the architecture of the iPhone is already arm64 , Intel used x86_64 simulators. With the new M1 series devices, the simulators also run on the arm64 architecture.


1 Answers

It's not because of iOS 12 - note the error message. This is the ARM64e architecture, which is used on the A12 and later. ARM64e compiles into ARMv8.3 instructions, which enable Pointer Authentication Codes. This means that rather than traditional flow control instructions (BL, RET) the code is expected to use the authenticating variants (BLA[A/B], RET[A/B]), and likewise for some pointer loading instructions (LDR => LDA[A/B], etc).

The ARMv8.3 instructions greatly improve security, as most hacks are achieved by overwriting pointers and subverting the program's flow control. Apple didn't announce this as a feature of the ARM12, but it is nonetheless, and going forward will be the standard on all Apple processors - and likely sometime in Android devices as well.

More about this at http://newosxbook.com/forum/viewtopic.php?f=11&t=19557

like image 109
Technologeeks Avatar answered Oct 01 '22 19:10

Technologeeks