Xcode 6.1.1 & 6.2: iOS frameworks containing simulator slices can't be submitted to the App Store

Number:rdar://19209161 Date Originated:10-Dec-2014 12:58 PM
Status:Open Resolved:Duplicate of 18431785 (Open)
Product:Developer Tools Product Version:Xcode 6.1.1 (6A2006)
Classification:Other Bug Reproducible:Always
If an iOS framework contains a fat binary with simulator (i386/x86_64) and device (ARM) slices, any application that attempts to embed that framework will be rejected from App Store submission.

Steps to Reproduce:
1. Given an iOS framework, build it for simulator use.
2. Build the same framework for device use.
3. Run `lipo -create` to combine the two binaries for the frameworks, embedding the result in one of the original bundles.
4. Merge the contents of “Modules” folders inside each framework bundle, so the resulting bundle contains Swift modules for all simulator and device architectures.
5. Create an application project, and drag the merged framework bundle into the “Embedded Binaries” section of the application target’s settings.
6. Attempt to submit the application to the App Store.

Attached is an example of such an application project (SubmissionFailure.xcodeproj), with a framework (Realm.framework) demonstrating the issue.

Expected Results:
App Store submission would succeed. Perhaps Xcode would automatically strip out the simulator slices/symbols/modules, but this is not (strictly speaking) necessary for this bug to be fixed.

Actual Results:
Spurious errors about the application referencing “non-public symbols,” like __bzero. See https://github.com/realm/realm-cocoa/issues/1163 for a screenshot of those errors.

This does not occur with static libraries (or static pseudo-frameworks), because only the correct slice gets statically linked into the application binary in the first place.

More discussion about this issue can be found in https://github.com/realm/realm-cocoa/issues/1163 and https://github.com/Carthage/Carthage/issues/188.


What's the status on this? The original radar still open?

Duped as 24537878

By benchatelain at Feb. 6, 2016, 4:40 a.m. (reply...)
By abofahaad310 at Feb. 1, 2016, 8:13 p.m. (reply...)

Duped as 19344627

By heath.borders at Dec. 25, 2014, 6:28 a.m. (reply...)

Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!