iOS 6 Xcode 4.5 不支持架构 armv7s
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/12832232/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
iOS 6 Xcode 4.5 unsupported architecture armv7s
提问by mrosales
When trying to archive an app for an Ad Hoc release, I am getting the following warning:
在尝试为 Ad Hoc 版本归档应用程序时,我收到以下警告:
iPhone/iPod Touch: application executable contains unsupported architecture(s): armv7s (-19031)
iPhone/iPod Touch: application executable contains unsupported architecture(s): armv7s (-19031)
I am really not sure why this is happening for two reasons:
我真的不确定为什么会发生这种情况,原因有两个:
- The only non-foundation framework I am using is the Facebook SDK, which is the latest version
- I successfully archived the app last week and the only things that have changed since then are purely coding changes.
- 我使用的唯一非基础框架是 Facebook SDK,它是最新版本
- 我上周成功地归档了该应用程序,从那时起唯一发生变化的是纯粹的编码更改。
Also, I have tried archiving with and without an iPhone 5 plugged in, and I receive the error both ways.
此外,我尝试在插入和未插入 iPhone 5 的情况下进行存档,但我收到了两种方式的错误。
Does anybody know how to fix this?
有谁知道如何解决这个问题?
采纳答案by S.P.
Quick fix is
快速修复是
Remove armv7s from
从
Project -> Build Settings -> Architecures
项目 -> 构建设置 -> 架构
Updated ::
更新 ::
Now change Build Active Architecture in Build Settings to No to Yes. But even this is not a pure solution to this problem.
现在将 Build Settings 中的 Build Active Architecture 更改为 No 到 Yes。但即使这也不是这个问题的纯粹解决方案。
回答by Taiyo Komyama
I could archive and validate my projects by changing status of 'Build Settings -> Build Active Architecture Only' from 'No' to 'Yes'.
我可以通过将“构建设置 -> 仅构建活动架构”的状态从“否”更改为“是”来存档和验证我的项目。
回答by 21k
Same problem here today when submit my app (update) to appstore.
今天将我的应用程序(更新)提交到 appstore 时出现同样的问题。
I clearly remember that its last version was submitted with both armv7 and armv7s set and succeeded, but now Organizer told me :
我清楚地记得它的上一个版本是同时设置了 armv7 和 armv7s 并成功提交的,但现在 Organizer 告诉我:
"iPhone/iPod Touch : application executable contains unsupported architecture(s): armv7s"
“iPhone/iPod Touch:应用程序可执行文件包含不受支持的架构:armv7s”
to remove armv7s is simple, but my app is Universal, will the armv7s-removed app run on all iOS devices (iPhone 5 for example)? when should i build with aremv7s?
删除 armv7s 很简单,但我的应用程序是通用的,删除 armv7s 的应用程序是否可以在所有 iOS 设备(例如 iPhone 5)上运行?我什么时候应该用 aremv7s 构建?
回答by Franky
Same issues here, app passed validation before, but after a quick code change, no go. Could this possibly have something to do with ipods? Seems to be a recent issue, as of yesterday.
同样的问题,应用程序之前通过了验证,但在快速更改代码后,不行。这可能与ipods有关吗?截至昨天,似乎是最近的问题。
回答by junkimu
Getting the same result as 21k. I submitted a binary with both armv7
and armv7s
to the App Store last week, and it passed validation as well as the review. Now I tried submitting an update to the same app with the exact same project settings (other than the usual version number bump), and it fails validation.
获得与 21k 相同的结果。我上周向 App Store提交了一个包含armv7
和的二进制文件armv7s
,它通过了验证和。现在我尝试使用完全相同的项目设置(除了通常的版本号颠簸)向同一个应用程序提交更新,但它没有通过验证。
In fact, I try validating the archived app from last week and now get the same error. So something must have changed on the App Store's side.
事实上,我尝试验证上周存档的应用程序,现在遇到了同样的错误。因此,App Store 方面肯定发生了一些变化。
回答by Jeff Grimes
Go to Project ---> Build Settings and scroll down to the Architecture setting.
转到 Project ---> Build Settings 并向下滚动到 Architecture 设置。
You will probably see the value $(ARCHS_STANDARD_32_BIT) listed under Architecture.
您可能会看到“架构”下列出的值 $(ARCHS_STANDARD_32_BIT)。
If so, double-click $(ARCHS_STANDARD_32_BIT), select it, and click the minus button to get rid of it. Then click the plus button and write armv7 and press Enter.
如果是这样,双击 $(ARCHS_STANDARD_32_BIT),选择它,然后单击减号按钮将其删除。然后点击加号按钮,写上armv7,回车。
You have now removed armv7s, which was unsupported. Try it again and things should be good.
您现在已经删除了不受支持的 armv7s。再试一次,事情应该是好的。
回答by oscar castellon
Removes armv7s architecture from menu Build settings > Architectures. At that point must appear valid architectural amrv7s and amrv7. Removes only finished in s. If the menu doesn't appears, notice that it is set to "All" and "Combined" in the search bar.
从菜单 Build settings > Architectures 中删除 armv7s 架构。此时必须出现有效的架构 amrv7s 和 amrv7。仅在 s 中完成删除。如果菜单没有出现,请注意它在搜索栏中设置为“全部”和“组合”。