Is it possible to target older iOS versions when using Xcode 4.2 and iOS 5 SDK?

I was having the same issue trying to get a newly created Xcode 4.2 project running on an iPhone 3G 4.2.1. Here is how I was able to get it to run.

1) Change the Target’s “Build Settings” ==> “Architecture” from “Standard (armv7)” to “other”. Add armv6 and armv7.

2) Change the Target’s “Build Settings” ==> “Valid Architecture” to armv6 and armv7.

3) Change the Target’s “Build Settings” ==> “iOS Deployment Target” to iOS 4.2.

enter image description here

4) Open the projects *-Info.plist, remove the setting “Required device capabilities” (note it required armv7) enter image description here

btw I figured this out when I tried to manually add the app via the organizer and it reported:

Can’t install application

The Info.plist for application at /Users/…/TestsDebug.app specifies
device capability requirements, which are not met by Dev iPhone 3G

All should work after that. Talk about a PITA.

Leave a Comment