Reputation: 41
I embedded the Mapbox Framework in an earlier iOS project, using an earlier version (7.x series) of Xcode. This included adding an "Embed Frameworks" step in Target the Build Phase. Everything was working as expected (life was good). I later upgraded to Xcode 8 GM and the "Embed Frameworks" option was not available from the PLUS (+) sign at the top of the Build Phase area, but the Link Binary With Libraries option was - so I used it. There seems to be a change in how Xcode 8 uses binaries because I now have to go to the General tab and scroll down to find the "Embedded Binaries" option to get things working. Has anyone else noticed this issue with Frameworks since upgradeing to Xcode 8 GM and have you found a different approach to resolving the issue other than navigating to the General tab to get things working?
Upvotes: 0
Views: 2633
Reputation: 4843
I don't think we've ever had an "Embed Frameworks" menu option from the plus button at the top of the build phases tab. "Embed Frameworks" is actually just a "Copy Files" build phase which has been configured for framework embedding and renamed to "Embed Frameworks". The plus button menu in the build phases tab lets you add each of the phase types, so it does have an option for "Copy Files", and you could then configure such a phase to embed frameworks. But it doesn't have a pre-canned "Embed Frameworks" option.
The way one normally gets a phase named "Embed Frameworks" created automatically is if you use the "Embedded Binaries" section of the "General" tab (which will create a Copy Files phase named "Embed Frameworks" when you first add something to it). Additionally, in some circumstances adding a new framework target to your project will add it to Embedded Binaries automatically.
Upvotes: 4
Reputation: 41
I found release notes of xcode 8: https://developer.apple.com/library/prerelease/content/releasenotes/DeveloperTools/RN-Xcode/Introduction.html#//apple_ref/doc/uid/TP40001051-CH1-DontLinkElementID_52
and it says: "Projects and Targets The "Embed Binaries" section of the target editor correctly adds new embedded binaries. (27631378) Xcode correctly embeds or links frameworks across projects without requiring you to set up a direct reference between the project that produces the framework and the project that embeds or links it. (27631386) Changes made to projects from outside Xcode (for instance, from Git) do not cause Xcode to select a different active scheme. (16762297)"
Upvotes: 0