WARNING ITMS-90080: “The executable 'Payload/myapp.app/Frameworks/some-framework.framework' is not a Position Independent Executable

I have previously been able to submit my application without issue. The only part of my workflow that changed was the use of Sourcetree. After pulling updates to the following frameworks, I receive this warning when submitting to the iOS App Store. I also receive an email that contains:

Non-PIE Binary – The executable ‘Payload/myapp.app/Frameworks/Alamofire.framework’ is not a Position Independent Executable. Please ensure that your build settings are configured to create PIE executables. For more information, refer to Technical Q&A QA1788 – Building a Position Independent Executable

  • iOS - Integrating credit card payments
  • Different cell bg color depending on iOS version (4.0 to 5.0)
  • App Store Review Button
  • Print Class Name of Current File in Swift
  • How to write audio file locally recorded from microphone using AudioBuffer in iPhone?
  • setKeyboardAppearance for UIWebView
  • Non-PIE Binary – The executable ‘Alamofire.framework’ is not a Position Independent Executable. Please ensure that your build settings are configured to create PIE executables. For more information, refer to Technical Q&A QA1788 – Building a Position Independent Executable

    etc…

    The notable frameworks in question are:

    • SwiftyJSON
    • Charts
    • Alamofire

    I’ve read the Apple Technical QA article, manually set all deployment targets of these frameworks and my own project to no avail. Has anyone seen this issue before and was able to resolve it?

    Update:

    I can confirm that these warning do not affect the submission approval process. I submitted my app for public release and it was approved despite the warnings. Now I’m just curious as to what happened on Apple’s end and what this means for framework developers.

    3 Solutions Collect From Internet About “WARNING ITMS-90080: “The executable 'Payload/myapp.app/Frameworks/some-framework.framework' is not a Position Independent Executable”

    Looks like it may be a bug on Apple’s side, I’ve had this today too. See here:

    https://github.com/CocoaPods/CocoaPods/issues/5453

    To summarise the info in the link, recent successfully submitted builds had no PIE flag set and they went through OK. So it seems that either Apple is changing something or it may be a bug.

    Getting the same thing. Not sure if it’s related but also all the builds have been wiped from the account (is that normal right after a release).

    Also, had an issue where I got an email that my build had completed processing while in review but I hadn’t uploaded a new build in over a week.

    Apple’s servers were reporting issues this week.

    Feels like something’s wrong on Apple’s end with this.

    Hi I have the same problem, no issue until I try to upload the archive to iTune connect and it gives warning message what you are getting. I also received email from Apple to fix this warning message.

    “The executable ‘******/.framework’ is not a Position Independent Executable. Please ensure that your build settings are configured to create PIE executables. For more information, refer to Technical Q&A QA1788 – Building a Position Independent Executable” .

    I followed the steps describe in https://developer.apple.com/library/ios/qa/qa1788/_index.html#/apple_ref/doc/uid/DTS40013354. and perform clean – build. Build was successful. But when I choose “Generic iOS Devices”, build failed with error message saying “-no_pie and -bitcode_bundle (Xcode setting ENABLE_BITCODE=YES) cannot be used together error”. To fix this issue i changed option for “Enable Bitcode” to NO in Target.

    This fixes the build problem. Now when I try to upload the archive to iTune connect it gave me the error
    “ERROR ITMS-90635 ‘Invalid Mach-O Format. …………. Verify that all of the targets for a platform have consistent value for the ENABLE_BITCODE build setting.'” and upload fail .

    Now to fix this I un ticked option “include bitcode” in upload dialog and upload worked as expected without any warning or error.