TestFlight:应用程序可执行文件包含不受支持的体系结构:armv7s

时间:2012-09-24 21:24:10

标签: iphone objective-c ios xcode testflight

我正在尝试使用测试版建立一个临时版本。

我选择了操作系统设备,并尝试创建存档。

但是我收到以下警告。

(null):  iPhone/iPod Touch: application executable contains unsupported 
 architecture(s): armv7s (-19031)

我的测试飞行目标有以下设置。

enter image description here

我可以很好地发布。

5 个答案:

答案 0 :(得分:4)

看起来您正在使用旧版本的TestFlight库。

iPhone 5使用新处理器(A6),带有修改后的指令集(AMRv7s) 由于您也在使用该架构构建应用程序,因此所有链接库也需要支持它。

TestFlight提供了其库的新版本(1.1),支持该特定架构 所以,只需下载新版本的库,链接到那个,你会没事的。

您的“发布”目标正在编译和链接正常,因为实际上没有使用TestFlight库中的符号。但是如果你需要对iPhone 5的TestFlight支持,只需更新到最新版本的库。

答案 1 :(得分:2)

当您使用armv7设备归档应用程序时,此警告完全正常。

考虑一下,你制作一个包含armv7s架构的存档(这就是我们想要的),并且警告告诉你armv7设备不支持该架构(这完全有意义)。

为了证明更进一步,只需连接iPhone 5并尝试存档,您就会看到警告消失。

答案 2 :(得分:1)

据我所知,Xcode 4.5目前不允许您创建包含armv7s的存档构建。

我的项目使用了两个第三方库(Dropbox和Flurry),我重新验证了我已经包含了最新的iOS 6版本。我验证了所有其他框架(和libsqlite3.0.dylib)都位于iOS 6.0区域。这些都没有帮助。

然后我从头开始创建一个全新的空项目并尝试存档构建并收到完全相同的错误。因此,在浪费了6个小时试图解决这个问题后,我暂时得出结论认为不可能摆脱警告。

基于其他评论,显然,没有必要构建armv7s以在iPhone 5上运行。

任何与我在此发布的内容相反的信息都将不胜感激。

答案 3 :(得分:0)

您需要做的就是从有效的架构中删除armv7s。

我认为有几个问题已被问到同样的问题。

答案 4 :(得分:-1)

我在准备Ad-Hoc测试时存档时显示了相同的警告消息。

(null):  iPhone/iPod Touch: application executable contains unsupported 
 architecture(s): armv7s (-19031)

我已经按照上面的建议删除了armv7s并且警告消失了。这样做有什么影响?什么是armv7s支持?

由于昨天没有对任何设置或代码进行任何更改,可能导致此警告弹出的原因是什么?