Comments (3)
Hi @mzbro
Thanks for your question.
Headers are not transitive by default, the expectation is that dependencies are implementation details. There are 2 possibilities:
- If the consumer, in this case, the
test_package
has a direct#include
to one header of the transitive package, then the consumer should declare a directrequires
to the package, as it depends directly on it. - If the package does
#include
in its public headers other headers from the dependency, then it is propagating the include requirements, and as it is not the default visibility, it should be declared in the requires withself.requires("pkg/version", transitive_headers=True)
Please let us know if that helps.
from conan.
Happy to help.
The truth is that the basic tutorial doesn't cover this transitivity, it is a bit more advanced case, we might try to add some hints or links there.
Thanks for the feedback!
from conan.
Adding transitive_headers=True
to my example project solved this issue. Thank you very much! I must have missed that in the tutorial.
from conan.
Related Issues (20)
- [bug] detect_api.detect_clang_compiler(compiler_exe="clang") returns an incorrect version HOT 3
- [question] Set test_package_folder based on version in recipe HOT 3
- [bug] Spurious leading spaces in generated conanbuildenv shell scripts HOT 6
- cmake find_package failed when use conanfile.py HOT 1
- [question] Support for avoiding the upload of new recipe revisions in conan upload? HOT 6
- [question] Building libX11 with conan HOT 1
- [question] How to explicitly pass a build directory to `CMake.build()`? HOT 12
- package_info cpp_info components HOT 4
- [question] Is it possible to pass git credentials when doing conan config install HOT 3
- [question] How to access `self.options` of a parent library package from its test package? HOT 2
- [bug] MSVC build issue not reproduceable on linux HOT 9
- Autotools packages are ignoring host profile and building for the build profile HOT 7
- [question] What is the replacement to the `CMake.definitions` list in Conan 2? HOT 4
- [question] Conan with CMake failing only in CI pipeline but not on local machine. HOT 7
- [bug] Duplicate dependencies created by CMakeDeps
- [question] conan build or cmake --build cannot find header files HOT 4
- [question] Info on best way to debug/develop packages HOT 4
- [bug] cmake.ctest arguments are not treated properly HOT 2
- [question] Building test package: how to find the includes of the library under test? HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from conan.