Closed BoilerTom90 closed 6 months ago
Hi @BoilerTom90
Thanks for your detailed report. I think this might be a duplicate https://github.com/conan-io/conan/issues/10544, and it is a complex issue to solve in 1.X, but fortunately it seems it has already been fixed in 2.0 (coming very, very soon final GA, already in beta.9)
A quick recommendation you might want to try: when using tool_requires
it is recommended to use the 2 profiles, "build" and "host" profiles, because the dependency graph changes, and it is computed way closer to what Conan 2.0 will do. It will also produce a different lockfile. It is very possible that the issue will persist, but this is something to do in either case to be 2.0 ready (and 2.0 lockfiles definitely solve the issue)
Hi @memsharded ,
I have exactly the same issue. I defined Qt as a regular requirement and also as a tool_requires
. I used 2 profiles (host and build) which in my case are identical. I still use Conan 1 (1.59) as Qt's recipe is not conan-2-ready yet. I created 2 fully-locked lock files, one in release and one in debug. Then, from these lock files I generated 2 other lock files with the parameter --build
. With these partially-locked lock files I am able to rebuild all the dependencies I use except for Qt. I have this error ERROR: Build-require 'double-conversion' cannot be found in lockfile
(Qt was built with with_doubleconversion
at true). double-conversion
is in the lock files, actually I can rebuild it.
My understanding is that this issue is fixed in Conan 2 but not cannot be done in Conan 1. As I cannot use Conan 2 for now, is there a workaround?
Thank you for your help. Have a great weekend.
Sorry this was not followed up back then.
This referred to old Conan 1.X lockfiles. Lockfiles have been fully revamped in Conan 2.0, I am closing this ticket as outdated, please create new tickets referring to the new lockfiles for any further question or issue. Thanks!
Environment details
Below I'm providing the lock file and the conanfile that was provided to the
conan install
command. The conanfile.text file contains thebuild_requires
section, but when I run conan install, it tells me a build dependency is not in the conan file. But it is...conanfile.txt
conanlock.lock
Steps to reproduce
Logs
When I run the conan install command, you can see that it's ignoring the entries in the build_requires section of the conanfile.text file. Then, it errors out saying it can't find one of the values.