Warning: iPhone apps should include an armv6 architecture even with build config set
If using Xcode 4.2 or higher, try the following:
Click your Project name (in the left column), followed by the Target:
Click the 'Build Settings' tab (in the right column):
Click the 'Release' or 'Distribution' row under 'Architectures', and choose 'Other...':
Double click the highlighted row named '$(ARCHS_STANDARD_32_BIT)' in the popover that appears, and replace it by typing 'armv6'. Then add a new row with the plus button in the bottom left of the popover, and type 'armv7', then click Done:
Update: you should add armv7s to target the iPhone 5 as well. (And drop armv6 if building with Xcode 4.5 or higher, which no longer supports armv6.)
That's it. You should now be able to build/archive without generating errors.
If it still doesn't work, see this answer from justinxreese, which suggests adding entries for armv6 and armv7 under "Required Device Capabilities" in your info.plist file.
warning: iPhone apps should include an armv6 architecture (current ARCHS = armv7)
You can stay with arm7 only if you want, but if you want to limit to iPhone 4 / iPad it's because you have a good reason ? To limit to devices you need to use
UIRequiredDeviceCapabilities in your Info.plist, otherwise people with previous iPhone will find your app and it will not work.
PS: It's not easy to find a device capability for both iPad and iPhone, you can for example said that you want devices with a front facing camera but this will limit to iPhone 4 and iPad 2 (and not iPad 1)
XCode 5 dependencies warning - confuses iOS deployment targets and architectures
Even though I knew I hadn't typed the string IPHONEOS_DEPLOYMENT_TARGET in any of my sources, on a whim I searched for it in the project manager. Turns out that XCode does not use the settings displayed when clicking on the project in the project manager for compiling the app...
The only way I could get to the hidden setting that somehow overrode the visible setting was to click on the search result.
So, if you get this warning:
iOS deployment targets lower than 4.3 are not supported, do this:
Cmd+Shift+F, search for IPHONEOS_DEPLOYMENT_TARGET.
Click search results with a target < iOS 5.0 (to go to the hidden Build Setting).
Set them to at least 5.0.
Note: Do not add armv6 to Architectures, set it to Standard (armv7, armv7s).
iPhone apps with a deployment target lower than 4.3 should include an armv6 architecture
I haven't used the version, but the current Xcode won't support signing for iOS 2.0 , so when iOS 5 comes out, 3.0 might have the same issue of not being supported
This is from http://www.weston-fl.com/blog/?p=3050 (This site has helped me resolve so many errors, so props to Mike D.)
- In Xcode navigate to Build Settings and find Architectures group (it’s on the top, so hard to miss). Add armv6 to Architectures line. It should contain armv6, armv7 or Standard (armv6 armv7)
- Set Base SDK to Latest iOS (currently set to iOS …)
- Uncheck Build Active Architecture Only or set it to NO.
- Valid Architectures must show armv6 armv7
When your project uses your own dependent libraries, build them with the same (correct) configuration.
No rule to process file for architecture armv6
Xcode 4.5 has dropped support for armv6 as the warning says. The setting is showing because you had it in a previous version of your project. Just change your setting to compile for armv7 and armv7s (iPhone5).
Apple has decided to drop support for old devices and thus armv6 is deprecated. I decided to drop support for armv6 devices due to this. All armv7 devices can be upgraded to iOS 5, so I also set that as the minimum version supported.
Unable to validate application for iOS App Store, armv6 architecture missing
Set the iOS Deployment Target to iOS 4.3.