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:
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.