Test suite failures building 0.10.0 on CentOS7 - building from git

  • Done
  • quality assurance status badge
Details
3 participants
  • Cook, Malcolm
  • ???
  • Ludovic Courtès
Owner
unassigned
Submitted by
Cook, Malcolm
Severity
normal
C
C
Cook, Malcolm wrote on 13 May 2016 00:22
(name . Ludovic Courtès)(address . ludo@gnu.org)(name . 'bug-guix@gnu.org')(address . bug-guix@gnu.org)
1463091775110.48039@stowers.org
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?

THanks,

Malcolm






> -----Original Message-----
> From: Ludovic Courtès [mailto:ludo@gnu.org]
> Sent: Thursday, March 31, 2016 3:00 AM
> To: Cook, Malcolm <MEC@stowers.org>
> Cc: Guix-devel <guix-devel@gnu.org>; 'bug-guix@gnu.org' <bug-
> guix@gnu.org>
> Subject: Re: Test suite failures building 0.10.0 on CentOS7
>
> "Cook, Malcolm" <MEC@stowers.org> skribis:
>
> > Thanks for the reminder about
> Suite.html I note there too that I should be emailing bug-guix@gnu.org
> instead of guix-devel. I've cc:ed it this time. What is the best going forward?
>
> Yeah, using bug-guix@gnu.org for bug reports is the best way.
>
> > I am building the release from git since I want to ./configure with a
> > non-standard --localstatedir of /gnu/var
>
> This can also be done when building from the tarball: just run
>
> tar xf guix-0.10.0.tar.gz
> cd guix-0.10.0
> ./configure --localstatedir=/gnu/var
> …
>
> > In any case I have reduced the issues by adding to my install mantra:
> >
> > export ACLOCAL_PATH=/usr/share/aclocal # as per
>
> Another reason for using the release tarball: there’d be no such issues!
> :-)
>
> > In guix/cve.scm:
> > 76: 2 [call-with-cve-port # 518400 ...]
> > In guix/http-client.scm:
> > 300: 1 [http-fetch/cached # # 518400 ...]
> > In unknown file:
> > ?: 0 [string-append #f "/http/"
> "Fjb931UJRoTPOjHq6hc1oawK9bCopdhOoX9grKLx71Q="]
> >
> > ERROR: In procedure string-append:
> > ERROR: In procedure string-append: Wrong type (expecting string): #f'
>
> This is a harmless failure: it indicates that neither the HOME nor the
> XDG_CACHE_HOME environment variables are defined in the build
> environment. Could you define one of these (they can point any writable
> directory) and run ‘make recheck’?
>
> Surely we should handle this situation better. I guess
> ‘cache-directory’ in (guix utils) should just error out in such a case,
> with a clear error message. Thoughts?
>
> Thanks,
> Ludo’.
Attachment: checkFAIL.tar.gz (.00 MiB)
Attachment: LOG.tar.gz (.01 MiB)
?
Re: bug#23524: Test suite failures building 0.10.0 on CentOS7 - building from git
(name . Cook, Malcolm)(address . MEC@stowers.org)
87r3d3d7yp.fsf@member.fsf.org
"Cook, Malcolm" <MEC@stowers.org> writes:

Toggle quote (34 lines)
> 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:
Toggle snippet (13 lines)
<...>
;;; 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'
<...>

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!
L
L
Ludovic Courtès wrote on 24 May 2016 14:46
Re: Test suite failures building 0.10.0 on CentOS7 - building from git
(name . Cook, Malcolm)(address . MEC@stowers.org)(name . 'bug-guix@gnu.org')(address . bug-guix@gnu.org)
874m9naaio.fsf@gnu.org
Hi, Malcolm,

And apologies for the delay!

"Cook, Malcolm" <MEC@stowers.org> skribis:

Toggle quote (15 lines)
> 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.

Could you try again and run ‘pstree’ at this point, so we see exactly
what’s going on?

Toggle quote (4 lines)
> 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.

tests/guix-lint.log reads this:

Toggle snippet (24 lines)
++ guix lint dummy
accepted connection from pid 1580, user mec
+ out='t-guix-lint-1510/foo.scm:10:17: dummy-42: sentences in description should be followed by two spaces; possible infraction at 13
t-guix-lint-1510/foo.scm:9:14: dummy-42: synopsis should start with an upper-case letter or digit
t-guix-lint-1510/foo.scm:9:14: dummy-42: synopsis should not start with the package name
;;; Failed to autoload make-session in (gnutls):
;;; ERROR: missing interface for module (gnutls)
Backtrace:
In ice-9/boot-9.scm:

[...]

In guix/cve.scm:
76: 3 [call-with-cve-port # 864000 ...]
In guix/http-client.scm:
303: 2 [#<procedure 3ce5000 at guix/http-client.scm:324:6 args> system-error ...]
238: 1 [loop #]
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'

This error is due to the fact that GnuTLS (which is needed by the ‘cve’
linter) is missing on the system, but tests/guix-lint.sh shouldn’t be
testing the ‘cve’ linter in the first place. Fixed in
a61cd1d0fd642c45bc61ef52f09d8f62ce3976b8.

Thanks!

Ludo’.
L
L
Ludovic Courtès wrote on 11 Jan 2017 23:28
control message for bug #23524
(address . control@debbugs.gnu.org)
87k2a1ut8p.fsf@gnu.org
tags 23524 fixed
close 23524
?