Reputation: 173
I just upgraded from Xcode 6.4 to Xcode 7GM and am now getting the following warning when running my old project
embedded dylibs/frameworks are only supported on iOS 8.0
and later (@rpath/xxxxxx.framework/xxxxxx) for architecture armv7
This problem only happens in Xcode 7.But when I run the project in Xcode 6.4,it has never happened.
Upvotes: 17
Views: 10365
Reputation: 6081
I didn't have any embedded frameworks in my project, but this problem was because of the Thread Sanitizer turned on.
So the workaround was to raise deployment target to iOS 8, then debug threading issues, and then turn Thread Sanitizer off and bring back iOS 7 support.
Upvotes: 0
Reputation: 3610
Make sure all your TARGETs has same deployment target (installed pods or framework too) .
For example in below example all targets (Bolts,FBSDKCoreKit, FBSDKLoginKit .... SingleSignOnPod) must have same target (say 7.0)..
Upvotes: 7
Reputation: 739
Upvotes: 10
Reputation: 634
I experience the exact same issue on Xcode 7.1 beta3, and what I do is to search keyword 'IPHONEOS_DEPLOYMENT_TARGET' to make sure all targets above 8.0.
Upvotes: 22
Reputation: 1242
Your deployment target is lower than 8.0, which is the lowest iOS version that supports embedded frameworks. If you deploy the app on a device running 7.x, it would crash at runtime. This is why the compiler gave this warning.
The reason why this didn't happen on Xcode 6.4 is unknown. I myself dose get the warning when I did the same thing (chose deployment target 7.x but used embedded frameworks).
To solve this, just raise the deployment target to 8.0 or above. If you do need to support 7.x, try to use static libraries instead of embedded frameworks.
Upvotes: 1