[email protected] writes: > Hello, > A program I want to use requires `dwarfs`, and the one currently > provided by Guix is many years out of date and appears to not even build > correctly anymore. So I thought I'd try to dive in and fix it, and get > the most recent version while I was at it. I am using the current > package definition in Guix as a base, but there are still errors I don't > know what to do about. During the cmake configure step, this happens: > > ```[ 11%] Creating directories for 'fmt-populate' > [ 22%] Performing download step (git clone) for 'fmt-populate' > Cloning into 'fmt-src'... > fatal: unable to access 'https://github.com/fmtlib/fmt.git/': Could not > resolve host: github.com > Cloning into 'fmt-src'... > fatal: unable to access 'https://github.com/fmtlib/fmt.git/': Could not > resolve host: github.com > Cloning into 'fmt-src'... > fatal: unable to access 'https://github.com/fmtlib/fmt.git/': Could not > resolve host: github.com > Had to git clone more than once: 3 times. > CMake Error at > fmt-subbuild/fmt-populate-prefix/tmp/fmt-populate-gitclone.cmake:50 > (message): > Failed to clone repository: 'https://github.com/fmtlib/fmt.git' > > > make[2]: *** [CMakeFiles/fmt-populate.dir/build.make:102: > fmt-populate-prefix/src/fmt-populate-stamp/fmt-populate-download] Error > 1 > make[1]: *** [CMakeFiles/Makefile2:87: CMakeFiles/fmt-populate.dir/all] > Error 2 > make: *** [Makefile:91: all] Error 2``` > > I'm not sure what to make of this. Does anyone else know? Suggestions > for improvements to the modified package definition are also welcome, I > only know what I'm doing some of the time. ;)
Hi, The CMake build system will try to download and build libraries that it can’t find. In Guix this is not possible because packages need to be reproducible, so all the sources must be package inputs and the build environment disallows internet access. In your case, the fix should be simple: provide the library so that CMake doesn’t have to build it. In the build logs it says this: >CMake Warning at cmake/need_fmt.cmake:21 (find_package): > Could not find a configuration file for package "fmt" that is compatible > with requested version "10.0". > > The following configuration files were considered but not accepted: > > > /gnu/store/h1606q4qppln792xlzciv2maj51ws7ah-fmt-9.1.0/lib/cmake/fmt/fmt-config.cmake, > version: 9.1.0 You can see in `guix show fmt` that other versions are available, in this case you can use the fmt-11 variable instead of fmt. Hope that explains it well. Have a nice day, Noé
signature.asc
Description: PGP signature
