target overrides the FRAMEWORK_SEARCH_PATHS build settings

Objective CCocoapods

Objective C Problem Overview


I'd like to ask and then answer this question.

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?

Objective C Solutions


Solution 1 - Objective C

Selected the Project, targets-> app, then Build Settings where I added the $(inherited) line, deleting whatever specific pod had been referenced there before:

enter image description here

I hope this helps someone.

Solution 2 - Objective C

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:

  1. From the Project Navigator on the left side, select your project.
  2. On the center screen, go to Build Settings
  3. Add a filter for 'Framework Search Paths'
  4. Enter $(inherited) as the value; it should auto-fill with data evaluating that expression

Below is an image of Xcode with Version 7.2 (7C68).

![Xcode preview][1]

[1]: http://i.imgur.com/LKYHDCQ.png "Xcode Version 7.2 (7C68)

Solution 3 - Objective C

I had a $(inherited) but recursive, just change it to non-recursive

project target -> build settings -> framework_search_path

enter image description here

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionPeter BrockmannView Question on Stackoverflow
Solution 1 - Objective CPeter BrockmannView Answer on Stackoverflow
Solution 2 - Objective CdsapaloView Answer on Stackoverflow
Solution 3 - Objective CyocView Answer on Stackoverflow