[Feedback] Conan Advanced - Tools as build_requires
- Dominant language
- Python
- Stars
- 63
- Forks
- 38
- PR merge metrics
- No merged PRs in 30d
Description
The course suggests to avoid using in-recipe build_requires for common tools such as CMake and move them into profiles in order to leverage system-installed tools, while using exact versions of less common tools directly in the recipe.
While it's a bit off-topic to the course itself - It feels like it 'd produce an unsatisfactory user experience on both ends:
* For common tools, if the tool happen to not be present in the system, Conan will fail to build the package and will not help the user with a tip to include the tool into the profile.
* For less common tools, CCI encodes the exact version of a tool, meaning that users can exclude the tool from the recipe in a convenient way to use a tool in the system and they also have duplicated tools in the graph, because CCI forbids version ranges.
The reasoning in here feels a bit contradictionary to itself.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by reviewing the Conan Advanced course guidance on tools as build_requires, profiles, system-installed tools, and exact tool versions in recipes. Compare the two recommendations and document a consistent explanation that addresses missing common tools, optional system tools, and duplicated tools in the dependency graph.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cmake
- Domain
- build-system, tooling
- Issue type
- Documentation
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100