This application doest not support this device's CPU type iOS 11

Hello, Im having this error when I try to build my game using Xcode (Version 9.0 (9A235)), on a iPhone 6, with iOS 11 installed.

Im using Unity 2017.1.1f1, and the Scripting-backend is Mono.
I’ve already tried to:

  • Create an empty project and try to compile(I got the same error);
  • Change the “Build Active Architecture Only”(on Xcode) in Build Settings to NO.
  • Change the Architectures(on Xcode) to armv6 and armv7 instead of only armv7
  • Change the scripting-backend to IL2CPP

My Player Settings:


3233124--248229--upload_2017-9-25_14-51-58.png

PS: I’m using macOS High Sierra

Is unity compatible with the new iOS 11?

1 Like

You should switch scripting backend to IL2CPP, because Mono is 32-bit only and iOS 11 doesn’t support 32-bit-only apps anymore.

2 Likes

Thanks, this fixed the issue. The problem was that I didn’t change the Architecture to Universal, so i got the error even after change the scripting backend to IL2CPP.

3 Likes

You don’t need to do any adjustments in Xcode if you do following changes in Player Settings:
Scripting Backend: IL2CPP
<…>
Architecture: Universal

3 Likes

Thanks! I’ve edited my previous reply to help another users with the same problem.

It would be good if Unity put some kind of warning about it when the scripting backend is set to Mono on iOS builds.

1 Like

Thanks guys, just ran into this problem today and fixed my build. Is there any reason that Mono should be the default selection?

1 Like

Mono isn’t default for newly created projects for quite long time.

1 Like

Oh, my bad. Guess i’ve been using the same project for awhile. :sweat_smile:
A warning before building would be helpful then.

We are working on it!

1 Like

I liked Mono because of how much quicker the build time is than IL2CPP.

I’ve had scripting backend set to IL2CPP and architecture set to Universal since the beginning yet since I’ve set the minimum iOS version to 11.0 (in Player Settings), I suddenly can’t archive and upload the Unity app in XCode. The error message says “Invalid iOS deployment version ‘-miphoneos-version-min=11.0’, iOS 10 is the maximum deployment target for 32-bit targets”

We are fixing this. If you are targeting iOS 11.0 and later, just pick “ARM64 only” as architecture.

Thanks for the heads up, this works for now! Would choosing ARM64 have any disadvantage over Universal?

I don’t claim to fully understand all this, but I just solved the same error message by switching Architectures to 'Standard Architectures" in Xcode build settings, in addition to setting the scripting backend in Unity to IL2CPP.

1 Like

I’ve been just going with the ARM64 setting in Unity and so far none of our the test players complained. But I imagine that perhaps having ARM64 instead of Universal may be bad if you want your app to be compatible with 32-bit iOS versions

if I use this…cant see the app in ios store? really want to solve this cause if not user will give crash review on our apps