So I'm trying to compile some open source projects on Windows, and understand the various the linking scenarios available to me. The gist of the situation is that program A depends on library B and B depends on Boost. What I'm thinking I would like to do is to link library B statically to Boost so I don't have to mess with distributing Boosts DLLs, but then link A dynamically to B. Well I'm not really sure I care how A & B are linked, but for now it seems the project is typically distributed that way so I'm really trying to understand more of the linker process so I can make an informed choice and know what my options really are.
More concretely, I don't understand if there's a relationship between how a compiled library is linked to vs how the library linked to its dependencies. Ie do these scenarios work and make sense? Scenario A - B links to Boost statically, is compiled into a DLL which A links to dynamically Scenario B - B links to Boost statically, is compiled into a lib which A links to statically