如何将armv6架构添加到Xcode项目中?
我收到警告说我的项目需要包含armv6二进制文件..但我真的不知道该怎么做。一直在谷歌上寻找答案,但似乎没有一个建议合适? 我需要下载armv6才能在我的应用程序中支持它吗?或者Xcode是否有它,我只需要将它包含在我的项目设置中? 另外,我的应用程序应该支持 3.1 之前的操作系统。
我在“调试”部分中在armv6和armv7后面添加了i386,但我不知道这是否可以解决问题。对于有更多经验的人来说,这似乎正确吗?
I got a warning that my project needs to include the armv6 binary.. but I don't really know how to do that. Have been googling for an answer, but non of the suggestions seems to fit?
Is armv6 something I need to download to support in my app, or does Xcode have it, I just need to include it in my project settings?
Also, my app should support OS back till 3.1.
I have added i386 behind armv6 and armv7 in the Debug section, but I dunno if that fixes the problem. Does this seem right to you people with more experience?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
按照我的步骤
我希望这有帮助
我遇到了同样的问题,我尝试这样做对我有用
Follow my step
I hope this help
I just have the same problem and I try to do this and it work for me
我可以在旧的第一代 iPhone 上运行我的代码,在架构中使用字符串 armv6 armv7 而不是 $(ARCHS_STANDARD_32_BIT) 并设置“仅构建活动架构”< /strong> 为是。
I could run my code on an old 1st generation iPhone using the string armv6 armv7 instead of $(ARCHS_STANDARD_32_BIT) in architectures and setting "Build Active Architecture Only" to YES.
在项目设置中,为架构选择“标准”(而不是“优化”)。这应该允许您为活动架构选择“armv6”。这意味着一旦它出现在应用程序商店中,它也应该可以在旧设备上运行(除非有任何其他弃用)。
将您的基础 SDK 更改为 iOS 设备 4.x 或更低版本,以便您可以看到您的 armv6 架构。
In Project Settings, select "Standard" for the architecture (not "Optimized"). This should allow you to select "armv6" for the Active Architecture. This means it should also work on older devices (barring any other deprecations) once it's on the app store.
Change your base SDK to iOS Device 4.x or below so you can see your armv6 architecture.
我刚刚遇到了同样的问题。我加载了一些较旧的 XCode 项目,它们可以在模拟器上正常编译和运行,但是一旦您尝试在设备上运行或调试(在我的情况下是 iTouch v2),它就会简单地说它正在运行,然后说应用程序退出了。没有错误,没有日志。
感谢 iOS 开发者论坛上的某个人让我走上了正确的道路。在过去几个 XCode 版本中的某个时刻(不包括 OSX Lion 的 XCode 版本,因为我只能访问 OSX Snow Leopard),Apple 改变了项目的设置方式,甚至更改了加载旧项目的方式。
然而,过去的标准架构包括arm6和arm7,至少XCode 4.2标准现在只包括Arm 7 $(ARCHS_STANDARD_32_BIT),并且显然也重置了旧项目的设置。当我使用模拟器时,我没有注意到这一点。
我尝试将配置字符串更改为“arm6 arm7”,但这不起作用。然而,返回的错误包含了解决方案(至少对我来说,希望其他人仍然遇到这个问题。)
在 XCode 4.2 中,如果您希望构建到较旧的硬件(例如 v1 和 v2 设备),只需将 Architectures 的项目设置更改为 $ (VALID_ARCHS) 默认为 Arm6 和 Arm7 的旧标准。
如前所述,您可能需要将调试选项的“仅构建活动架构”设置为“是”(但是我并未确认是否需要)。
我希望这对仍然遇到此问题的其他人有所帮助,对于碰撞此线程我深表歉意。
I just had this same problem. I loaded up a number of older XCode projects and they would compile and run fine with the simulator however as soon as you tried to run or debug on the device (which in my case in a iTouch v2) it would simply say it was running, then say the application exited. No errors, no logs.
Thanks to someone on the iOS Developer forums for putting me on the right track. At some point over the last couple of XCode releases (not counting the XCode releases for OSX Lion as I have access only to OSX Snow Leopard) Apple changed how projects were set up even older ones that were loaded.
The standard architecture used to include both arm6 and arm7 however, and at least with XCode 4.2 standard now only includes Arm 7 $(ARCHS_STANDARD_32_BIT) and apparently resets an old project's settings as well. Which went un-noticed to me as I used the simulator.
I tried changing the configuration string to "arm6 arm7" and this did not work. However the error that was returned contained the solution (at least for me an hopefully others still having this problem.)
In XCode 4.2 if you wish to build down to older hardware such as v1 and v2 devices simply change the project setting for Architectures to $(VALID_ARCHS) which defaults to the old standard of Arm6 and Arm7.
You may as mentioned previously be required to set the Build Active Architecture Only to "Yes" for the debug option (this however is not confirmed by me to be required).
I hope this helps anyone else still having this issue and I apologize for bumping this thread.
那是因为您使用了新的 iOS 5 SDK。苹果从标准架构中删除了armv6架构。
您可以了解有关此的更多信息 线程我之前已经开始了。
That's because you use the new iOS 5 SDK. Apple drop the armv6 architecture from the standard architectures.
You can have more information on this thread I've started before.