This is driving me crazy.
I have library A which in turn includes library B. The nested pair of libraries are used in 5 different projects. I want to have the source for A and B in a single place and link all 5 projects to them.
No matter what I do, I get one of two kinds of errors:
1) A class of library B colliding with itself. The linker sees said class in library A and also in library B.
2) Some classes missing, because the linker can't find them.
I should mention that library A includes categories. I am dealing with the category bug by having a dummy class in each category file and using the ObjC linker flag in the outer project.
Here is the setup I am trying to use. As described below, I get the duplicate symbols.
I have directories Documents/LibraryA, Documents/LibraryA/LibraryB, and Documents/Project1 through Documents/Project5.
The directory Documents/Project1 has a symlink LibraryA which points to ../LibraryA. The same holds true for projects 2 through 5.
Header search paths in the containing project are ./LibraryA ./LibraryA/Classes/** and ./LibraryA/LibraryB/**
Header search paths in LibraryA are ./LibraryB/**
Library search paths are always empty.