Arm64 architecture in xcode 5.1
It's not that hard to get rid of arm64 for the time being. all you need to do is to:
Edit your target's Build Settings. Change the value for
Architectures
by opening the drop down, click on Other... and select it, delete the row with value$(ARCHS_STANDARD)
and add two rows with values:armv7
andarmv7s
(or$(ARCHS_STANDARD_32_BIT)
as mentioned by nschum), close the popup.Edit the value
Valid Architectures
and simply remove thearm64
part of it.Do it for every nested project you might have inside your workspace or project.
Note: This is not a solution, it's just a few steps to mitigate your current problem, please keep following your dependency projects to find out when they come with arm64 compatibility and revert these settings' change ASAP.
Good luck
As of Xcode 5.1 $(ARCHS_STANDARD) now includes arm64 (as well as armv7 and armv7s) whereas with Xcode 5.02, $(ARCHS_STANDARD) only included armv7 and armv7s.
For Xcode 5.1
$(ARCHS_STANDARD) = armv7 armv7s arm64
$(ARCHS_STANDARD_32_BIT) = armv7 armv7s
So if you MUST compile in 64-bit then you need to make sure all included libraries have 64-bit slice. If they do not yet support 64-bit then you will have to compile in 32-bit instead.
But in either case, under your targets build settings you need to make sure that both the Achitectures and the Valid Achitectures are set the same and that they match (see images below). So you can try them both with $(ARCHS_STANDARD) and if it will not compile, then you can try them both with $(ARCHS_STANDARD_32_BIT) which in theory will remove the errors and compile a working project.
-
Like this for 64-bit with arm64 armv7s and armv7:
-
Or like this for 32-bit with armv7s and armv7 only (without arm64):
In Build Settings for your target, change the "Valid Architectures" to only those that you support; likely armv7 and armv7s in this case.
If you are using Cocoapods, be sure to change this for all of the targets within the Pods project, and set all of those targets' "Build Active Architecture Only" to "No" for all schemes.
A small change to your podfile to automatically remove the 64-bit build architecture from your cocoapods targets is detailed here:http://cameronspickert.com/2014/01/20/remove-the-arm64-architecture-from-cocoapods-targets