When I tried to create IPA file using Distribute APP option. It gave "IPA processing failed" error.
I have checked logs file: IDEDistribution.standard.log
file.
2019-08-06 18:36:52 +0000 warning: Configuration issue: platform iPhoneSimulator.platform doesn't have any non-simulator SDKs; ignoring it Scanning IPA... 2019-08-06 18:36:52 +0000 Assertion failed: Expected 4 archs in otool output: /var/folders/4t/rpjk7pd55t16jfrd32y98gf0lb2t68/T/IDEDistributionOptionThinning.~~~a4cZJc/Payload/demo.app/Frameworks/AppAuth.framework/AppAuth: Mach header magic cputype cpusubtype caps filetype ncmds sizeofcmds flags MH_MAGIC_64 X86_64 ALL 0x00 DYLIB 23
3680 NOUNDEFS DYLDLINK TWOLEVEL NO_REEXPORTED_DYLIBS Load command 0
You should check the
Embed Frameworks
underXcode > build
phases.If your framework is introduced here, you can't use
i386\x86_64
in your framework. Because theEmbed Frameworks
are copied to the application. To control the size of the application, the frameworks in theEmbed Frameworks
are required to be the most streamlined.You can use
Link Binary With Libraries
to introduce your framework, as described here: https://github.com/Carthage/Carthage/issues/1046Note that you need to add a new Run Script and add your framework to it, or it will crash.
1.uncheck "Rebuild from bitcode", 2.click next fast fast fast. (speed is also important.)
if not , it will show IPA processing failed.
We've solved this problem by setting
Always Embed Swift Standard Libraries
toNO
in all frameworks, that are being used in our app.I had to select "Do not embed" in Frameworks to solve this
Open Terminal
Open your project drag path of respective framework to Terminal For example.
cd /Users/xxxxx/Desktop/MyProject/ABC.framework
Set your Framework name in below command and run
lipo -remove i386 ABC -o ABC && lipo -remove x86_64 ABC -o ABC
To solve similar problem on my end I used the following:
Build Phases
Embed Frameworks
andEmbed App Extensions
sections I've addedRun script
with the following script:The script I took from here: https://medium.com/@maximbilan/ios-submission-unsupported-architectures-issues-733917a98cc3, credits goes to Daniel Kennet!
Also, be aware that this script could also cause compilation errors. In such case, here's the solution: Errors building Xcode Project after adding in Run Script fatal error: lipo: input file
On my end I also noticed that I have to turn off this script when compiling app locally (on development devices/simulator)
Hope that helps!