Why aren't vcpkg manifest dependencies transitive between C++ MSBuild projects? #45622
Unanswered
danielaviv-magnus
asked this question in
Q&A
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
I have two C++ projects in the same Visual Studio 2022 solution:
Why doesn’t App automatically get access to the fmt headers and libraries from LibA’s manifest?
Do I have to manually add every dependency that LibA uses to App’s vcpkg.json as well?
If I do this, it feels very wrong -
Cause it means anyone using LibA has to know about LibA’s internal dependencies and manually add them to their own manifest. That’s not a good or maintainable design.
I also saw the alternative suggestion to use a single shared vcpkg.json file for the entire solution.
But this is also not ideal, because it forces all projects to import all dependencies, even if most projects don’t actually use them.
Is there any way to get transitive dependencies working with vcpkg manifests in MSBuild C++ projects?
Or is there a better workaround for this problem?
Beta Was this translation helpful? Give feedback.
All reactions