Reputation: 3704
I'd like to update the CocoaPods built into my app, so I ran pod install
from the terminal.
That's when I got this error:
[!] The `APP_NAME [Debug]` target overrides the `FRAMEWORK_SEARCH_PATHS` build setting defined in `Pods/Target Support Files/Pods/Pods.debug.xcconfig'. This can lead to problems with the CocoaPods installation
- Use the `$(inherited)` flag, or
- Remove the build settings from the target.
How do you Use the $(inherited) flag?
Upvotes: 63
Views: 51596
Reputation: 882
It helps for me as well! But when I run pod install library search paths overwrites. So I made a hook for podfile, maybe it will help someone
project_path = './yourProject.xcodeproj'
project = Xcodeproj::Project.open(project_path)
project.targets.each do |target|
if target.name == 'yourProjectTarget'
target.build_configurations.each do |config|
config.build_settings['LIBRARY_SEARCH_PATHS'] = ['$(inherited)']
end
end
end
project.save
This hook overwrites LIBRARY_SEARCH_PATHS to $(inherited) for you each time you run pod install. Place it inside post_install Podfile block
Upvotes: 0
Reputation: 3704
Selected the Project, targets-> app, then Build Settings
where I added the $(inherited) line, deleting whatever specific pod had been referenced there before:
Upvotes: 126
Reputation: 325
I had this same problem (error build: Framework not found Pods_xxx) when updating cordova-onesignal from v2 to 3.3.0 on an old Ionic 3 project.
This solved it for me:
In Xcode, navigate Project + Target + General + Scroll down to Frameworks, Libraries, and Embedded Content
In the list I simply deleted (minus sign at bottom of list) the related file Pods_xxx.framework (it was a little grayed out)
After rebuild everything worked (incl OneSignal)
If I do pod install it comes back and I have to do it all over again.
Upvotes: 0
Reputation: 220
I had a $(inherited) but recursive, just change it to non-recursive
project target -> build settings -> framework_search_path
Upvotes: 0
Reputation: 1847
I was encountering this issue as well.
Aside from doing what Peter mentioned above, remember to double check if the correct Xcode project is selected in your podfile. This is because it is possible that you are changing the Build Settings of the incorrect Xcode project. It was a silly mistake, but it took quite some time before I realized it.
Normally, pod install
works automatically if there is only one .xcodeproj
file in the directory. However, if you are migrating your project to begin using cocoapods from the old way of manually adding frameworks/3rd party projects to your Xcode project, it is possible that you will have multiple .xcodeproj files in your folder. Doing the abovementioned fix didn't solve it for me, because I was editing the incorrect .xcodeproj
file.
Go to your project directory, check the file named Podfile
and make sure you specify the xcodeproj
:
# Uncomment this line to define a global platform for your project
# platform :ios, '8.0'
# Uncomment this line if you're using Swift
use_frameworks!
xcodeproj 'APP_NAME.xcodeproj'
target 'APP_NAME' do
# Your dependencies here
# pod 'NAME_OF_DEPENDENCY'
pod 'Google/CloudMessaging'
pod 'RxSwift', '~> 2.0'
pod 'RxCocoa', '~> 2.0'
pod 'RxBlocking', '~> 2.0'
pod 'Fabric'
pod 'Crashlytics'
pod 'FBSDKCoreKit'
pod 'FBSDKLoginKit'
pod 'FBSDKShareKit'
After selecting the correct .xcodeproj
on your Podfile, go to Xcode and do the following:
Build Settings
$(inherited)
as the value; it should auto-fill with data evaluating that expressionBelow is an image of Xcode with Version 7.2 (7C68).
Upvotes: 15