Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Can't compile 64-bit AIR ANE with ADT

Tags:

ios

adt

air

adobe

ane

I'm trying to compile the Adobe tutorial ANE (GitHub repo here, Tutorial here) for armv7 and arm64 architectures to bring it up to date.

ADT is failing, with 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 that the file is OK.

My XCode project settings clearly show:

  • Architectures are using Standard Architectures (armv7 arm64)
  • "Build active architecture only" is set to NO
  • "Valid Architectures" are armv7 armv7s arm64
  • My build configuration is set to "release"

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

The ADT build command I'm 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 .

The ADT I'm using is in the bin folder of the latest Adobe AIR SDK (AIR v.18) that I just downloaded today. I do not know whether this is the SDK that is being used, but I'm assuming that it is, since ADT is in a subdirectory of this SDK folder.

How do I resolve this error?

like image 843
Tom Auger Avatar asked Jul 16 '15 19:07

Tom Auger


1 Answers

The solution is resolved and the answer seems to be that I was checking against the wrong set of build files. Make sure you're building to "iOS Device" and NOT the specific device you happen to have plugged in to your USB port.

This is what solved the issue for me - moving the built .a file to the appropriate build folder of the ANE and running lipo -info on that file displayed the expected architectures.

like image 67
Tom Auger Avatar answered Oct 12 '22 16:10

Tom Auger