iPhone/iPod Touch: application executable is missi

2019-01-17 02:58发布

I have an issue with xCode 4.2. I am getting this error when building:

2011-06-18 13:35:49.839 Validation[4110:607] *** Warning: Defaulting to the standard codesign tool
warning: iPhone/iPod Touch: application executable is missing a required architecture.  At least one of the following architecture(s) must be present: armv6 (-19033)
Unable to validate your application. - (null)

I had a look at my project settings, and it has :

architectures: Standard (arm7) - ${ARCHS_STANDARD_32_BIT)
Build active architecture only : NO

Not sure what

10条回答
欢心
2楼-- · 2019-01-17 03:30

Note: Set the iOS Deployment Target to 4.3 or later in your project if you wish to drop ARM v6 support for your application. An ARM v7 processor is required to run versions of iOS later than 4.2.1.

查看更多
放我归山
3楼-- · 2019-01-17 03:30

Had absolutely the same problem with Xcode Version 4.2. and got also an other error:

There is no codesign:wrapper executable. Please reinstall the Xcode developer tools.

After downgrading the Xcode to an older version it fixed the problem.

查看更多
仙女界的扛把子
4楼-- · 2019-01-17 03:33

My Answer may be solve your problem: I had this problem even after following the accepted answer and found the following to work:

In your Info.plist, add an entry for Required Device Capabilities. This should be an array and will have two entries.

Item 0 : armv6
Item 1 : armv7

It will look like this:

Required device capabilities entry

查看更多
Evening l夕情丶
5楼-- · 2019-01-17 03:38

Not the optimal solution, but I found that if I changed the Deployment Target to 4.3 (it was 4.0 before) it gets rid of the error.

查看更多
爷的心禁止访问
6楼-- · 2019-01-17 03:39

Had the same problem, tried everything mentioned here - but still got the error on validate - I tried armv6 and armv7 steps, tried to add that to info.plist and also tried regenerating the distribution certificate just in case.

Turns out the info.plist file must have ${EXECUTABLE_NAME} and ${PRODUCT_NAME} in the respective fields ALSO the Product name in the Build Settings for that scheme+Target SHOULD match the scheme name I made sure all the names matched exactly EXECUTABLE_NAME, PRODUCT_NAME, Product Name in Target, binary name in build settings and info plist, and the deployable binary name - made sure they matched the Target name itself

Once all the names matched and the architecture matched, it worked. Until then it kept giving me error on validation.

查看更多
叛逆
7楼-- · 2019-01-17 03:41

For some reason the default architecture settings with xCode 4.2 is only for armv7. Go to Target -> Build Settings -> Architectures -> Release on value dropdown pick "Other...",

remove $(ARCHS_STANDARD_32_BIT), and add 2 rows first with "armv6" and second "armv7"
Done

查看更多
登录 后发表回答