Warning during archive App with iOS 8 Extension in Xcode 6
I have a problem while archiving my app.
I created a new target for an iOS 8 extension.
When I archive the app, I receive a warning.
The warning is
"PBXCp Warning", "warning: skipping copy phase strip, binary is code signed: /Users/Library/Developer/Xcode/DerivedData/App/Build/Intermediates/ArchiveInter mediates/AppName/IntermediateBuildFilesPath/UninstalledProducts/AppExtappex/AppE xt"
The app is in Objective-C.
Check the "Strip Debug Symbols During Copy" option in your Xcode target's build settings. Its saying that it cant strip debug symbols because the extension was already signed.
If you create a brand new sample project and a Today Extension in Xcode 6.2, the default values are set to NO for stripping of debug symbols.
Copied from: https://stackoverflow.com/a/30459703/736384
"Compiled code usually contains debug information. This debug stuff is helpful for inspecting running code in debugger, but less so for the optimized code you would ship in distribution builds. Therefore it gets stripped out when doing an Archive build.
The problem here is that PBXCp is unable to strip out debug symbols from signed binaries because this would invalidate the digital signature. So if you have a project that was created before Xcode 6.3 you will now get a warning like this.
To fix the warning simply change both values to NO. Removing them does not work because the default value is still YES for both. The project templates that came with Xcode 6.3 have these turned off by default. Only projects that were started with older templates still have YES on the Release line."
Source: https://www.cocoanetics.com/2015/04/skipping-copy-phase-strip/
The framework / extension is already stripped and code signed by default. The application project cannot detect that the framework has already been stripped and throws a harmless warning. You should not disable it or your application will not be stripped.
There seems to be some confusion surrounding the effect of the Strip Debug Symbols During Copy build setting, I recommend reading this article for additional information: Skipping Copy Phase Strip.
Here are my key takeaways from researching this question:
- When you create a new project with Xcode 6.2 or later the values inserted into the project file are NO for both of the default build configurations (Debug and Release) for this setting.
- Setting the value to YES in the Release configuration and the performing a Product Archive has no effect on the generated application binary size (I encourage you to verify this through a test on your own projects).
- Debug symbols used for Sybolication of iOS crash reports come from an external .dsym file which is separate from the application bundle so I would not expect the symbol table to be included in the binary.