0

I'm having a problem getting the 'System Header Search Paths' in build settings to work in Xcode and allow me to use #import <Core/CoreBlocks.h> rather than a local copy and #import "CoreBlocks.h"

First I need to "frame" the problem.

I have built a framework that I use across many if not all my projects. This is Core.framework . Inside the framework is the requisite "Headers" directory and within that 40 other headers, all of which are included in the 41'st header Core.h

I drop the Core.framework into another project and the other project headers or source files then import:

#import <Core/Core.h>

and get all the functionality of the 40 modules in the framework. Works fine.

BUT, what I need is a simple way to run the 40 modules of Core.framework outside the framework construct, as a separate build or project, with just the source and breakpoints, so I can debug and enhance it.

I try to define the framework's source directory as a search path for the other project:

enter image description here

yet the compiler complains about the inability to find the headers in the source code:

enter image description here

is all I get for all of the imports even though they all reside in the lower Core directory below that path:

~/Development/Projects/Core/Core/Core/NSRange+Core.h

And that's where I'm at a loss. What am I doing wrong?

Cerniuk
  • 14,220
  • 2
  • 29
  • 27
  • Interested to know why you used "System Headers Search Paths" instead of "Header Search Paths"? – malhal May 14 '20 at 10:19
  • The <> to indicate "not-project" and since there is no special indicator for "third party stuff", then it is just part of the "system". Ideally I could share the Core framework someday which then for someone else would be "not-project" aka system. Put another way, I wanted to make the Core framework independent and ensure that it could be used by someone else without the source as part of a generalized toolkit shared across multiple projects and multiple project teams and people. – Cerniuk May 14 '20 at 21:27
  • <> is Header Search Paths – malhal May 17 '20 at 14:05

1 Answers1

1

Found out why... Xcode for some reason can't use the *nix home directory notation in a pathname.

In other words while:

~/Development/Projects/Core/Core

does not work, the expanded equivalent:

/Users/BC/Development/Projects/Core/Core

does work in the Xcode system header search paths, yet it is not obvious as to why...

Cerniuk
  • 14,220
  • 2
  • 29
  • 27