问题
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?
回答1:
Follow my step
- In your picture you choose level change it to "Combined"
- Click at Standard (armv7) $(ARCHS_STANDARD_32_BIT)
- Choose "Other"
- CLick at "$(ARCHS_STANDARD_32_BIT)" and the Click "-" to delete it
- Click "+" to add new item
- Type "armv6"
- Click "+" again
- Type "armv7"
- Click anywhere to finish
I hope this help
I just have the same problem and I try to do this and it work for me
回答2:
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.
回答3:
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.
回答4:
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.
回答5:
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.
来源:https://stackoverflow.com/questions/7347802/how-to-add-armv6-architecture-to-xcode-project