Copy link to clipboard
Copied
Since upgrading to AIR 3.8, we can no longer package our AIR Application.
We are getting the following error:
internal_package-ios:
[exec] ld: -pie can only be used when targeting iOS 4.2 or later
[exec] Compilation failed while executing : ld64
Screenshot Here: http://cl.ly/image/3h2U1g271n1J
Reverting to AIR 3.7 fixes the issue... but we need 3.8 as we need the 4096 texture support that comes with BASELINE_EXTENDED profile.
From googling, this seems like it's related to the iOS SDK included with AIR, but the issue was fixed in AIR 3.7. Seems it has been regressed...
Copy link to clipboard
Copied
Looks like its related to this ANE.
https://github.com/alebianco/ANE-Google-Analytics
Just including that, and trying to publish a Fast Build for IOS, w/ AIR 3.8, should reproduce the error.
Copy link to clipboard
Copied
Hi Shawn,
Since AIR 3.8, we support only PIE enabled binaries, as per Apple recommendation.
For this, the minimum supported iOS version is 4.2. The ANE you are using specifies a minimum iOS version of 4.0 in its platform-iphone.xml, present at: https://github.com/alebianco/ANE-Google-Analytics/blob/master/build/platform-iphone.xml
You will need to change the line:
<option>-ios_version_min 4.0</option>
to:
<option>-ios_version_min 4.2</option>
and rebuild the ANE to make it work.
Regards,
Neha
Copy link to clipboard
Copied
Boom, wow, thanks!
Copy link to clipboard
Copied
Uhmm I know this is hackish but actually you can simply open the .ane file in WinRar, directly edit the file and save it. Juste make sure to click Yes when WinRar asks you if you want to update the file inside the archive.
This is really useful for ANEs you don't have the sources and can't rebuild.
Copy link to clipboard
Copied
Thanks! It works! As kboilydev mentioned, you can edit the "META-INF\ANE\iPhone-ARM\platform.xml" file in .ane manualy.