A
is a module project. There are some test targets and the relevant reusable code is compiled in a separate (static library) target. A
uses the third party Lumberjack logging library. The Lumberjack code was simply dropped into the project.
B
is a different module project, but otherwise it has the same properties as A
.
C
is the main project. It depends on A
and B
. It links the libraries of A
and B
.
Compiling C
will result in duplicate Lumberjack symbols.
How can I have multiple separate module projects so that...
- they don't know of each other,
- use the same third party code,
- can be compiled and tested on their own,
- included in a main project without duplicate issues?
Are
A
andB
binaries?If not you could simply uncheck the compile checkbox for all
*.m
files of one of the projects, so as to avoid building duplicate objects.Also if you could use
A
andB
thorough Cocoapods it would be best.