I have a project with multiple framework targets, that also have pods dependencies.
I have:
- No circular dependencies between targets
- Everything, including pods, is in Objective-C, no Swift at all.
- use_frameworks!in Podfile, so all pods are frameworks, not libraries.
Here is my structure:
- TUSystemKitdepends on- TUModels(which is a framework).
- TUModelsdepends on- Pods_TUModels(generated by pods).
- Pods_TUModelsdepends on- JSONModel
- TUModelsis automatically linked with its own pod framework (which contains- JSONModel).
- TUSystemKithas- TUModelsas target dependency.
- TUSystemKitis linked with- TUModels.
Visually, the dependencies are like this:
TUSystemKit ➔ TUModels ➔ Pods_TUModels ➔ JSONModel
When I select MyModels as the build target in Xcode, build succeeds. However, when I select TUSystemKit, the build fails, saying that module JSONModel is not found while building module TUSystemKit (TUUser in screenshot belongs to TUModels):
What am I doing wrong? Obviously I shouldn't be explicitly linking against all the frameworks in the dependency tree. Why does TUModels build perfectly but TUSystemKit errs on a module import inside a linked framework's code? Do I need to change something with pods?


