When I build my iphone app and my ipad app for archiving, I get this message: (But with iPhone instead of iPad in the iPhone app ofc)
(null): iPad: application executable contains unsupported architecture(s): armv7s (-19031)
I didn't get this error before! I didn't get it for my free versions of my app (which is almost the same code) I think it has something to do with iPhone 5? I want it to work with iPhone 5 so I don't want to remove it armv7s
/A noob
This warning is perfectly normal when you use an armv7 device to archive your application.
Think about it, you make an archive that includes the armv7s architecture (which is what we want) and the warning tells you that your armv7 device does not support that architecture (which totally makes sense).
To prove that even further, just hook up an iPhone 5 and try archiving and you will see that the warning will go away.
You have to wait until all custom libs in your project will update. Check it, some of popular libs have updated yet.
Until that remove armv7s:
Project -> Build Settings -> Archetecures
I had a similar problem on the XCode 4.6.3.
I get message:
iPhone/iPod: application executable contains unsupported architecture(s): i386
it turned out that if before the Build, run an application on the simulator, the application is going to the architecture i386 (for Mac), ignoring the Project Settings. Before Build need choose iOS Device as target.
Related
I'm trying to build an ad-hoc build with test flight.
I have the OS Device selected and am trying to create an archive.
However I get the following warning.
(null): iPhone/iPod Touch: application executable contains unsupported
architecture(s): armv7s (-19031)
I have the following settings for my test flight target.
I can build fine for release.
It looks like you're using an old version of the TestFlight library.
The iPhone 5 uses a new processor (A6), with a modified instruction set (AMRv7s).
Since you are building your app with that architecture too, all linked libraries also needs to support it.
TestFlight provides a new version (1.1) of its library, with support for that specific architecture.
So simply download the new version of the library, link against that, and you'll be fine.
Your "Release" target is compiling and linking fine, because no symbol from the TestFlight library is actually used. But if you need TestFlight support for the iPhone 5, just update to the latest version of the library.
This warning is perfectly normal when you use an armv7 device to archive your application.
Think about it, you make an archive that includes the armv7s architecture (which is what we want) and the warning tells you that your armv7 device does not support that architecture (which totally makes sense).
To prove that even further, just hook up an iPhone 5 and try archiving and you will see that the warning will go away.
As far as I can tell Xcode 4.5 will not currently allow you to create Archive builds that include armv7s.
My project uses two 3rd party libraries (Dropbox and Flurry) and I reverified I had the latest iOS 6 builds included. I verified that all my other frameworks (and libsqlite3.0.dylib) were all located in the iOS 6.0 area. None of this helped.
I then created a brand new empty project from scratch and attempted an Archive build and received the exact same error. So after wasting 6 hours trying to fix this, I am tentatively concluding it is not possible to get rid of the warning.
Based on comments else where, apparently, it is not necessary to build for armv7s to run on an iPhone 5.
Any information to the contrary of anything I have posted here would be appreciated.
All you need to do is remove armv7s from the valid architectures.
Same question has been asked several ties I think.
I was displayed the same warning message when I archived in preparation for Ad-Hoc testing.
(null): iPhone/iPod Touch: application executable contains unsupported
architecture(s): armv7s (-19031)
I have removed armv7s as recommended above and the warning went away. What repercussion are there in doing this? What is armv7s supporting?
With semingly no changes to any settings or code from yesterday, what may have caused this warning to pop up?
I am trying to update my app to work with the iPhone5, which entails ensuring that it is compiled for armv7 and armv7s architectures. I have updating my build settings in my project and have recompiled all statically linked libraries with these settings as well. So it now compiles and links successfully.
However, upon running it on a device (iPad) running iOS6 (though of course only supporting the armv7 architecture) I get an immediate crash with this output:
dyld: vm_protect(0x00001000, 0x003BB000, false, 0x07) failed, result=2 for segment __TEXT in /var/mobile/Applications/....[name/location of my app]....
I also get this in the trace window:
dyld`dyld_fatal_error:
0x2fe400c4: trap
0x2fe400c8: nop
I have no iPhone5 to test the armv7s portion of the binary. Of course I will test it on a real device before releasing into the wild, but I'd like to be able to continue work using my current armv7 iPad/iPhone running iOS6 in the meantime. I am using the recently released Xcode 4.5.
So, anyone have any idea what is going on, or possibly have the same problem?
Redownloading and subsequently recompiling one of the libraries I was including fixed the problem. Apparently either I had changed something incorrectly in the build configuration for the library when adding the armv7s architecture, or some part of the library's project became corrupted somehow. (The affected library was the Freetype2 library as included with the FTGLES2 Xcode project.)
You probably accidentally disabled dynamic linking when you statically recompiled the libraries (resulting in a -static flag being passed to clang when compiling).
Fix by switching "Enable linking with shared libraries" to "Yes" (the default) in the LLVM compiler language settings. (This removes GCC_LINK_WITH_DYNAMIC_LIBRARIES = NO from the project file).
I am using Xcode 4 version, and I have deployed SUP sample project developed for iOS platform in Xcode.
All the configurations I had done for running the application. The project was successfully built and run in iPhone & iPad simulators.
When I am trying to build the same with physical iPad registered, I am getting the following error.
[BEROR]No architectures to compile for
(ONLY_ACTIVE_ARCH=YES, active arch=armv7, VALID_ARCHS=armv6).
In the valid architecures menu i had added armv6 and armv7 also.
And at that time also am getting a number of errors saying
Apple Mach-O Linker Error
Select your project icon, go to build settings, in the architecture option, for you valid configuration (debug/release), click the '+' button, and add "armv6". Initially it has only armv7. Refer screen shot:
please i need some help.
I got this message in Organiser when trying to submit my app to iTunes connect: "iPhone/iPod Touch; application executable is missing a required architecture. At least one of the following architecture(s) must be present: armv6 ". There is no problem when building for on a iPhone or simulator.
I use xcode 4
Thank for any help:
Check the project build settings "Architectures". You're likely building with "Optimized armv7" instead of "Standard armv6, armv7". Your iPhone (3GS or 4) can handle armv7 but I think some of the older devices you may be targeting once you get to iTunes (iPhone 2G/3G, iPod 1G/2G) can't and require armv6.
I have an iPhone app that I am trying to port to MacOS. To get things started, I added a MacOS target to my existing Xcode project.
The problem I am having is that when I switch from the MacOS target to the iOS target, it tries to build it with architecture i386, which leads to like a zillion compiler errors.
In my target settings for the iOS target, it shows valid architectures as armv6 and armv7.
Here is the first error:
/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/usr/include/machine/types.h:37:0 /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/usr/include/machine/types.h:37:24: error: i386/types.h: No such file or directory
This appears to be a bug in XCode, which is circumvented by option-clicking (i.e. alt-clicking) on the overview, usually top-left in the xcode window, and then selecting the right SDK. The architecture then changes to the right one (hopefully).