Unable to compile 64-bit AIR ANE with ADT

I am trying to compile Adobe ANE tutorial (GitHub repo here , tutorial here ) for armv7 and arm64 architectures to update it.

ADT not working, Apple App Store allows only universal applications. "libIOSVolumeLib.a" is not a universal binary. Please change build settings in Xcode project to "Standard Architecture" to create universal library/framework Apple App Store allows only universal applications. "libIOSVolumeLib.a" is not a universal binary. Please change build settings in Xcode project to "Standard Architecture" to create universal library/framework

However, lipo -info ios/libIOSVolumeLib.a reports: ios/libIOSVolumeLib.a are: i386 x86_64 , which I think means the file is ok.

My Xcode project settings clearly show:

  • Architecture uses Standard Architectures (armv7 arm64)
  • Only active architecture builds set to NO
  • Virtual architectures armv7 armv7s arm64
  • My build configuration is set to "release"

Everything builds OK. The file libIOSVolumeLib.a is copied to the appropriate folder structure referenced by the ADT build command.

The ADT build command I am using is adt -package -target ane Volume.ane extension.xml -swc VolumeLib.swc -platform iPhone-ARM -C ios . -platformoptions platformoptions.xml -platform Android-ARM -C android . -platform default -C default . adt -package -target ane Volume.ane extension.xml -swc VolumeLib.swc -platform iPhone-ARM -C ios . -platformoptions platformoptions.xml -platform Android-ARM -C android . -platform default -C default .

The ADT that I use is located in the bin folder of the last Adobe AIR SDK (AIR v.18) that I just downloaded today. I do not know if this SDK is used, but I assume that it is, since ADT is in a subdirectory of this SDK folder.

How to fix this error?

+6
source share
1 answer

The solution is resolved, and the answer seems like I was checking the wrong set of build files. Make sure that you are creating an β€œiOS device”, NOT the specific device that you plugged into your USB port.

This is what solved the problem for me - moving the embedded .a file to the appropriate ANE build folder and running lipo -info in this file displayed the expected architectures.

+1
source

All Articles