azamsharp
azamsharp

Reputation: 20094

application executable is missing a required architecture armv6

I am using xCode 4.2 and trying to deploy my application. I am failing the validation with the following error message:

application executable is missing a required architecture armv6

The value for my Architectures is set to Standard (armv7). This is the ONLY option in the dropdownlist. Base SDK: iOS 5.0 (This is the only option) Deployment SDK: 3.2 Build Active Architecture Only: NO Valid Architectures: armv6 armv7 armv7f armv7k

Does anyone please know the solution to this problem?

Upvotes: 81

Views: 26431

Answers (8)

Dario Caric
Dario Caric

Reputation: 1

For me it helped when I set only armv6 under Architectures

Upvotes: -1

Rajaraman Subramanian
Rajaraman Subramanian

Reputation: 801

My environment was Xcode 4.5.1. Changing two things solved this issue for me.

  1. Setting the deployment target to at least iOS 4.3.
  2. Keeping only armv7 architecture in the Architectures list under build settings and removing all others (including armv6) explicitly.

Upvotes: 5

user1712742
user1712742

Reputation: 49

Adding armv6 was only partially the problem for me to resolve the same issue with Xcode 4.5. I also had to increase my deployment target from iOS 4.1 to iOS 5.0 to get it to work. Many hours of frustration for such a simply fix. Hope it helps.

Upvotes: 3

Ken
Ken

Reputation: 31171

For Xcode 4.5, set the deployment target to at least iOS 4.3 and that will resolve it. armv6 and earlier versions of iOS are almost extinct.

Upvotes: 46

J3RM
J3RM

Reputation: 1722

In the Xcode 4.2 GM this is still a problem but you can resolve it by doing the following.

  1. Switch to the files/folders view in xcode project

  2. Select your Project ( the blue icon)

  3. Select your Application under Targets in the middle of the screen.

  4. Go To build settings

  5. Find Architectures > Distribution

  6. Expand this section so you can see both Debug and Release

  7. Change "Standard (armv7) - $(ARCH_STANDARD_32_BIT)" to "Other..."

  8. Replace, "Standard (armv7) - $(ARCH_STANDARD_32_BIT)" with "armv6", then add a new item "armv7"

Remember you may need to do this for all included projects aka frameworks such as TAPKU

enter image description here

Upvotes: 83

Piotr Byzia
Piotr Byzia

Reputation: 3423

I stumble upon this question when looking for a solution to the warning:

warning: iPad: application executable is missing a required architecture.
At least one of the following architecture(s) must be present: armv7 (-19033)
Unable to validate your application. - (null)

Other answers did not solve my problem, then I realized I changed a value of CFBundleExecutable. When I returned to the old value everything went smoothly again.

I'm not sure what is a direct cause of that warning but at least I can distribute Ad Hoc builds again.

Upvotes: 4

samwize
samwize

Reputation: 27383

All of the answers didn't help for my case, using Xcode 4.2.1.

What I did was changing Architectures from armv7 to armv6 armv7 and it worked. Like this:

enter image description here

Upvotes: 3

bdurao
bdurao

Reputation: 555

Easy way to do it:

1) Left-click project icon (blue icon, under "Run" button).

2) Next to the project icon (to the right of it), left-click on project name under "PROJECT" (White background).

3) Select tab "Build Settings" and look for submenu "Architectures" (First one). Left-click on "Standard (armv7) $(ARCH_STANDARD_32_BIT)" and select "Other..."

4) Click on the "-" icon to remove original value ("$(ARCH_STANDARD_32_BIT)"). Click the "+" icon and write "armv6" (without double-quotes). Click the "+" icon again and add "armv7" (also without double-quotes). Click "Done".

5) Make sure that "Build Active Architecture Only" is set to "No" (it should be)

6) Next to the project icon (to the right of it), left-click on project name under "TARGETS" and repeat steps 3, 4 and 5.

7) Press cmd + I on your keyboard (or Product -> Profile on Xcode menu) and check to see if everything is ok.

Upvotes: 40

Related Questions