Xcode 7 not populating FRAMEWORK_SEARCH_PATHS

Xcode 7 (beta 3) no longer populates the FRAMEWORK_SEARCH_PATHS build setting when an external framework (.framework) is added by dragging it to the Frameworks group in the Project Navigator, or by using the Build Phases>Link Binaries With Libraries>Add Other... button.


This is a change from the behviour of Xcode 6, which did automatically populate this build setting.


The result is a linker error on the next build: ld: framework not found...


Is this an intentional design change for Xcode 7, or a bug?

It shouldn't be necessary any more (and I'm not sure 6.3 still did it automatically — the new behavior has been around for a while).


Look in the build transcript for the ld command and see what parameters were used to add this particular framework.

Thanks for the response.

To clarify, by external framework, I mean a pre-compiled framework that exists only as a .framwork folder, not as an Xcode sub-project.

I've confirmed that Xcode 6.4 definitely populates the FRAMEWORK_SEARCH_PATHS build setting when external frameworks are added to a project, and that Xcode 7.0 does not.

Under both Xcode 6.4 and 7.0, the directories listed in the FRAMEWORK_SEARCH_PATHS build setting are passed to the Ld command as -F parameters (one per directory). In the Ld command, the framework itself is identified by the -framework parameter, but it is not qualified with any path info.

Under either Xcode 6.4 or 7.0, if the -F parameters are populated correctly, the Ld command succeeds, otherwise it fails. So, unless there is some other magic new to Xcode 7 to replace the Ld -F parameters and/or FRAMEWORK_SEARCH_PATHS build setting, the FRAMEWORK_SEARCH_PATHS setting still needs to be populated in order to find external (pre-compiled) frameworks.

Does anyone know of a replacement for the functionality of FRAMEWORK_SEARCH_PATHS, or is the loss of automatic population of this build setting a bug introduced in Xcode 7.

Thanks...

...Bill

Xcode 7 not populating FRAMEWORK_SEARCH_PATHS
 
 
Q