Subject: Re: bug#23524: Test suite failures building 0.10.0 on CentOS7 - building from git

From: [email-masked] (宋文武)
Date: Sun, 15 May 2016 16:46:38 +0800

"Cook, Malcolm" <[email-masked]> writes:

> Ludo!
>
> It has been far too long that I followed up on this.  I have just now return to this project.
>
> Setting HOME, as you last suggested, got me past the `make check` problems from before.  Thank you.
>
> However,  `make check` still apparently halts after:
>
> ....
> PASS: tests/guix-package-net.sh
> PASS: tests/guix-package.sh
> PASS: tests/guix-build.sh
> PASS: tests/guix-environment.sh
> PASS: tests/builders.scm
>
> The tests apparently stop running.  Top agrees with me.
>
> At this point, all checks have PASSed  except guix-lint.sh, which is the single file tarred up in checkFAIL.tar.gz
>
> LOG.tar.gz contains logs of stdout/stderr from each step so far:
> bookstrap, configure, make, make check. and also a file detailing the
> version of RPM installed on my CentOS 7 box.
>
> Note - All this is still trying to build based on git, viz:
>
>     git clone git://git.savannah.gnu.org/guix.git  --branch v0.10.0  guix
>
> .... and still of course performing the ./bootstrap.
>
> I will in a separate message detail what happens when I try and build from the release tarball.
>
> However, I would like to understand what the issues are with building
> using git.  Is there a good explanation on the possible issues that
> are avoided by using the release tarball?
With the release tarball, the ‘configure’ script and documents (man
pages and info) are already built, so autotools, help2man etc. are
not required to build guix.

The failing one in the guix-lint.log:
--8<---------------cut here---------------start------------->8---
<...>
;;; Failed to autoload make-session in (gnutls):
;;; ERROR: missing interface for module (gnutls)
Backtrace:
<...>
In guix/build/download.scm:
 256: 0 [tls-wrap #<input-output: socket 10> "static.nvd.nist.gov"]

guix/build/download.scm:256:17: In procedure tls-wrap:
guix/build/download.scm:256:17: In procedure module-lookup: Unbound variable: make-session'
<...>
--8<---------------cut here---------------end--------------->8---

It’s due to missing ‘guile-gnutls’ in your host system,
and the ‘cve’ checker of ‘guix lint’ need it to access the URL
through HTTPS.  Seems like we should skip those tests if the gnutls
module is not available.

Once build guix on your host (it uses glibc, guile,
guile-gnutls, etc on your host system), you can install (or without
substitutes, build) guix from guix, which will use glibc,
guile-gnutls, etc in guix (all in /gnu/store).

Thanks your report!