ARMv6和ARMv7

7

我有一个自己创建的应用程序,想要在旧款 iPhone 3G 上进行测试。之前我已经多次使用这个手机进行测试,但是对于这个新应用程序,构建无法成功。

我做了一些搜索并发现需要将架构从 "armv7" 更改为 "armv6",我已经在项目和目标中都进行了修改。然而,在尝试将应用程序构建到设备上时,会出现以下错误(construction 是应用程序名称):

Could not launch "construction" No such file or directory (/Users/Matthew/Library/Developer/Xcode/DerivedData/Construction-cqtujdbjhpvbkrehtfzwvuhvxdrs/Build/Products/Debug-iphoneos/Construction.app/Construction)

但是在模拟器中可以构建,并且可以正常运行... 有什么想法吗?


我也走了那条路,并且在“Xcode”之后,它不正确...但我不确定它为什么会在那个位置查找? - Monergy
3
抱歉,我回答了自己的问题!我认为应该保留这个答案以防其他人遇到相同的问题...在此之前,我没有将 plist 设置更新为 armv6...我确实不得不删除 plist 中的 armv7 才能使它正常运行。 - Monergy
哦,我的天啊,我爱你。我也遇到了同样的问题,但是没有人能够回答。我在这个网站上找到的所有方法都不起作用,除了这个。 - Joseph
1
我可以确认,删除并重新创建架构清单似乎可以解决与架构有关的其他提交错误。在我的情况下,我需要在升级到XCode 4.6后重新添加相同的架构。顺便说一句,你应该写下你的答案并接受它!如果只是一个评论,那么找到这个问题的人可能会错过它。 - Henrik Erlandsson
4个回答

7
非常感谢您的帮助-在Info.plist文件中清除UIRequiredDeviceCapabilities属性,这个方法我自己是想不到的。

谁说过任何关于UIRequiredDeviceCapabilities的事情? - xus

0

对我来说,这些方法都不起作用。但是这个方法有效...

做以下常规操作: 我清除了构建目录(cmd-k), 清除了DerivedData(见prefs|Locations), 从我的iPhone 5中删除了该应用程序, 拔掉了iPhone,然后 重新启动Xcode。

最后再做一下这个操作: 打开Xcode Organizer。单击设备|(您的设备名称)|应用程序。最后,从此处删除您的应用程序(也就是再次从您的设备中删除应用程序)。

构建和运行...


0

这些解决方案都对我没用。我正在使用XCode 4.5和ML。我最终做的(仍需要彻底测试)是重新创建我的项目,从头开始,并将所有源代码和库移动到新项目中,并为此新项目选择了我的配置文件。在复制过程中,我还手动复制了旧Info.plist文件的内容,并将它们粘贴到新的Info.plist中,替换了它们所有。

在我的情况下,我正在使用CorePlot库,该库需要armv7(根据链接器),因此我不能只使用armv6。

我试图弄清楚的是,当(便宜的)XCode更改某些设置以使其不作为设备上的调试器运行时。我猜测是'project.pbxproj'文件中的某些东西。否则,我无法解释为什么新创建的项目可以工作而旧项目却不能。

我知道这个解决方案可能并不适用于每个人,就像在我的情况下一样,会丢失所有svn更改。

我会发布任何进展。

我的下一步是添加CorePlot并让项目构建它,而不是使用预构建的版本。


0

抱歉,我解决了自己的问题!我想我应该保留这个解决方法,以防其他人遇到同样的问题... 我之前没有更新plist设置为armv6...我必须在plist中删除armv7才能使它正常工作


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接