The new AIR 3.8 SDK has some very interesting features, such as 4096 texture support. However when compiling and packaging apps for iOS against AIR 3.8, if the app uses a native extensions, it might cause 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
That error happens because AIR 3.8 (and later versions) supports only PIE enabled binaries. This change was made by Adobe according to Apple recommendation.
You can fix that error by checking the minimum iOS version  specified by the extension you are using. Check the platform-iphone.xml
build file of the extension. If it specifies 4.0, you will get the error. You will need to change the line:
<option>-ios_version_min 4.0</option>
to:
<option>-ios_version_min 4.2</option>
After the change, rebuild the extension. It should fix the problem and make your app able to be compiled and packaged using AIR 3.8.
RT @as3gamegears: iOS packaging failed against #AIR 3.8 http://t.co/4c53SrpBz2 #as3 #flash #gamedev
Andrey Kyznetsov liked this on Facebook.
Jakub Wagner liked this on Facebook.
Tarkan Kürşad liked this on Facebook.