如何将armv6架构添加到Xcode项目?

时间:2023-01-27 11:02:42

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.

我得到一个警告,我的项目需要包含armv6二进制文件..但我真的不知道该怎么做。一直在谷歌搜索答案,但没有建议似乎适合? armv6是我需要下载到我的应用程序中支持的东西,还是Xcode有它,我只需要将它包含在我的项目设置中?此外,我的应用程序应支持操作系统回到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?

我在调试部分中添加了arm3和armv7后面的i386,但我不知道如果能解决这个问题。这对你有经验的人来说是否合适?

如何将armv6架构添加到Xcode项目?

5 个解决方案

#1


7  

Follow my step

按照我的步骤

  1. In your picture you choose level change it to "Combined"
  2. 在你的图片中你选择将它改为“合并”

  3. Click at Standard (armv7) $(ARCHS_STANDARD_32_BIT)
  4. 点击标准(armv7)$(ARCHS_STANDARD_32_BIT)

  5. Choose "Other"
  6. CLick at "$(ARCHS_STANDARD_32_BIT)" and the Click "-" to delete it
  7. 点击“$(ARCHS_STANDARD_32_BIT)”并点击“ - ”将其删除

  8. Click "+" to add new item
  9. 点击“+”添加新项目

  10. Type "armv6"
  11. Click "+" again
  12. 再次单击“+”

  13. Type "armv7"
  14. Click anywhere to finish
  15. 点击任意位置完成

I hope this help

我希望这有帮助

I just have the same problem and I try to do this and it work for me

我只是有同样的问题,我尝试这样做,它对我有用

#2


3  

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 armv7而不是$(ARCHS_STANDARD_32_BIT)在旧的第一代iPhone上运行我的代码,并将“仅构建活动架构”设置为YES。

#3


2  

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.

在“项目设置”中,为体系结构选择“标准”(不是“优化”)。这应该允许您为Active Architecture选择“armv6”。这意味着一旦它在应用程序商店中,它也应该适用于旧设备(除非有任何其他弃用)。

Change your base SDK to iOS Device 4.x or below so you can see your armv6 architecture.

将您的基本SDK更改为iOS Device 4.x或更低版本,以便您可以看到您的armv6架构。

#4


1  

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.

我刚遇到同样的问题。我加载了一些较旧的XCode项目,他们可以使用模拟器进行编译和运行,但是只要您尝试在设备上运行或调试(在我的情况下在iTouch v2中),它就会说它正在运行,然后说申请退出。没有错误,没有日志。

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.

感谢iOS开发人员论坛上的某些人让我走上正轨。在最后几个XCode版本的某些时候(不包括OSX Lion的XCode版本,因为我只能访问OSX Snow Leopard),Apple改变了项目的设置方式,即使是加载过的旧版本。

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.

标准体系结构过去包括arm6和arm7,但至少使用XCode 4.2标准现在只包含Arm 7 $(ARCHS_STANDARD_32_BIT),并且显然也会重置旧项目的设置。当我使用模拟器时,我没有注意到这一点。

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.)

我尝试将配置字符串更改为“arm6 arm7”,但这不起作用。但是,返回的错误包含解决方案(至少对我而言,希望其他人仍然遇到此问题。)

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.

在XCode 4.2中,如果您希望构建较旧的硬件(如v1和v2设备),只需将架构的项目设置更改为$(VALID_ARCHS),默认为Arm6和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.

我希望这可以帮助其他任何人仍然有这个问题,我为碰撞这个线程而道歉。

#5


0  

That's because you use the new iOS 5 SDK. Apple drop the armv6 architecture from the standard architectures.

那是因为你使用了新的iOS 5 SDK。 Apple将armv6架构从标准架构中删除。

You can have more information on this thread I've started before.

您可以获得有关我之前开始的此主题的更多信息。

#1


7  

Follow my step

按照我的步骤

  1. In your picture you choose level change it to "Combined"
  2. 在你的图片中你选择将它改为“合并”

  3. Click at Standard (armv7) $(ARCHS_STANDARD_32_BIT)
  4. 点击标准(armv7)$(ARCHS_STANDARD_32_BIT)

  5. Choose "Other"
  6. CLick at "$(ARCHS_STANDARD_32_BIT)" and the Click "-" to delete it
  7. 点击“$(ARCHS_STANDARD_32_BIT)”并点击“ - ”将其删除

  8. Click "+" to add new item
  9. 点击“+”添加新项目

  10. Type "armv6"
  11. Click "+" again
  12. 再次单击“+”

  13. Type "armv7"
  14. Click anywhere to finish
  15. 点击任意位置完成

I hope this help

我希望这有帮助

I just have the same problem and I try to do this and it work for me

我只是有同样的问题,我尝试这样做,它对我有用

#2


3  

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 armv7而不是$(ARCHS_STANDARD_32_BIT)在旧的第一代iPhone上运行我的代码,并将“仅构建活动架构”设置为YES。

#3


2  

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.

在“项目设置”中,为体系结构选择“标准”(不是“优化”)。这应该允许您为Active Architecture选择“armv6”。这意味着一旦它在应用程序商店中,它也应该适用于旧设备(除非有任何其他弃用)。

Change your base SDK to iOS Device 4.x or below so you can see your armv6 architecture.

将您的基本SDK更改为iOS Device 4.x或更低版本,以便您可以看到您的armv6架构。

#4


1  

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.

我刚遇到同样的问题。我加载了一些较旧的XCode项目,他们可以使用模拟器进行编译和运行,但是只要您尝试在设备上运行或调试(在我的情况下在iTouch v2中),它就会说它正在运行,然后说申请退出。没有错误,没有日志。

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.

感谢iOS开发人员论坛上的某些人让我走上正轨。在最后几个XCode版本的某些时候(不包括OSX Lion的XCode版本,因为我只能访问OSX Snow Leopard),Apple改变了项目的设置方式,即使是加载过的旧版本。

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.

标准体系结构过去包括arm6和arm7,但至少使用XCode 4.2标准现在只包含Arm 7 $(ARCHS_STANDARD_32_BIT),并且显然也会重置旧项目的设置。当我使用模拟器时,我没有注意到这一点。

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.)

我尝试将配置字符串更改为“arm6 arm7”,但这不起作用。但是,返回的错误包含解决方案(至少对我而言,希望其他人仍然遇到此问题。)

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.

在XCode 4.2中,如果您希望构建较旧的硬件(如v1和v2设备),只需将架构的项目设置更改为$(VALID_ARCHS),默认为Arm6和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.

我希望这可以帮助其他任何人仍然有这个问题,我为碰撞这个线程而道歉。

#5


0  

That's because you use the new iOS 5 SDK. Apple drop the armv6 architecture from the standard architectures.

那是因为你使用了新的iOS 5 SDK。 Apple将armv6架构从标准架构中删除。

You can have more information on this thread I've started before.

您可以获得有关我之前开始的此主题的更多信息。