Compilation error on git master: `gzip: unbound variable`

DoneSubmitted by pkill9.
Details
5 participants
  • Chris Marusich
  • Ludovic Courtès
  • Marius Bakke
  • Mark H Weaver
  • pkill9
Owner
unassigned
Severity
important
P
P
pkill9 wrote on 19 Dec 2017 21:10
(name . bug-guix)(address . bug-guix@gnu.org)
E1eRODH-0006TY-Pl@rmmprod07.runbox
Architecture: x86_64
RAM: 4GB
Filesystem: EXT4
Guile version: 2.0.11
Guile-Git (Guile module) was manually compiled and installed by me fromhttps://gitlab.com/guile-git/guile-git
Operating system: Slackware 14.2
`uname -a` output: Linux slack 4.4.88 #2 SMP Thu Sep 14 14:21:06 CDT 2017x86_64 Intel(R) Core(TM) i3 CPU M 330 @ 2.13GHz GenuineIntel GNU/Linux

Compilation failure when running `make` (after running `./bootstrap` and`./configure`) in latest git master and in latest source release tarball:'In procedure memoize-variable-access!: gzip: unbound variable'
Full output (error is at line 172): http://paste.debian.net/1001510
My IRC username on freenode is pkill9, I am often in the #guix room onfreenode.
IRC chatlog for reference:
2017-12-19 16:39:05 pkill9 I'm getting an error while compiling Guix, It says 'In procedure memoize-variable-access!: gzip: unbound variable'. Full output here: https://pastebin.com/wiNSZvXT 2017-12-19 16:39:15 pkill9 anyone know what this means? 2017-12-19 16:40:15 civodul pkill9: this was reported a couple of times before and i think it's been fixed (?) 2017-12-19 16:40:26 pkill9 oh interesting 2017-12-19 16:40:38 civodul can you paste to another site BTW, like paste.debian.net, which allows Tor users to access it 2017-12-19 16:40:42 pkill9 ok 2017-12-19 16:42:37 pkill9 http://paste.debian.net/1001510/ 2017-12-19 16:43:09 pkill9 I downloaded the source from the Guix downlaod page 2017-12-19 16:46:24 pkill9 civodul: has the fix been added to the source downloadable from the download page? 2017-12-19 16:46:51 pkill9 as in on this page https://www.gnu.org/software/guix/download/ 2017-12-19 16:47:03 pkill9 under 'GNU Guix 0.14.0 Source' 2017-12-19 16:47:09 pkill9 in the tarball 2017-12-19 16:47:28 pkill9 or is it very new and not yet been added to that? 2017-12-19 16:51:18 bavier pkill9: iirc it was a more recent fix 2017-12-19 17:02:20 civodul yes, it's in master i think 2017-12-19 17:02:47 civodul though i still can't remember what that was, which is kinda annoying 2017-12-19 18:57:21 lfam pkill9: From commit 9a56cf2b5b4970843c215091ea9823a67e077310, the error is not reproduced. 2017-12-19 19:08:54 pkill9 hmm i tried compiling with that commit (downloaded the tar.gz from https://git.savannah.gnu.org/cgit/guix.git/commit/?id=9a56cf2b5b4970843c215091ea9823a67e077310) and i still get that error 2017-12-19 19:14:24 lfam pkill9: What is `guix --version`? 2017-12-19 19:14:51 pkill9 i don't have it installed, that's why i'm compiling it 2017-12-19 19:15:19 lfam How are you providing the dependencies? 2017-12-19 19:15:39 pkill9 oh, slackware 2017-12-19 19:16:03 lfam Okay, and what is the CPU architecture, how much RAM is there, what filesystem are you compiling on, any other details that might be relevant? 2017-12-19 19:16:11 lfam Also the kernel version 2017-12-19 19:17:18 pkill9 x86_64, about 4GB ram, EXT4 filesystem, kernel 4.4.88 2017-12-19 19:18:28 lfam pkill9: Okay, that all sounds good. What version of Guile are you using? 2017-12-19 19:18:42 pkill9 2.0.11 2017-12-19 19:20:05 lfam Okay, sounds like this should all work. If you don't get any other answer here, please compile all this information into a bug report and send it to <bug-guix@gnu.org>, first searching for previous reports of this issue
Attachment: file
M
M
Marius Bakke wrote on 28 Dec 2017 18:48
878tdmd9rf.fsf@fastmail.com
pkill9@runbox.com writes:
Toggle quote (23 lines)> Architecture: x86_64>> RAM: 4GB>> Filesystem: EXT4>> Guile version: 2.0.11>> Guile-Git (Guile module) was manually compiled and installed by me from> https://gitlab.com/guile-git/guile-git>> Operating system: Slackware 14.2>> `uname -a` output: Linux slack 4.4.88 #2 SMP Thu Sep 14 14:21:06 CDT 2017> x86_64 Intel(R) Core(TM) i3 CPU M 330 @ 2.13GHz GenuineIntel GNU/Linux>>> Compilation failure when running `make` (after running `./bootstrap` and> `./configure`) in latest git master and in latest source release tarball:> 'In procedure memoize-variable-access!: gzip: unbound variable'>> Full output (error is at line 172): http://paste.debian.net/1001510
This paste has expired. Can you attach the log here instead?
-----BEGIN PGP SIGNATURE-----
iQEzBAEBCgAdFiEEu7At3yzq9qgNHeZDoqBt8qM6VPoFAlpFLlQACgkQoqBt8qM6VPrOZwgAn5DL9b7PfwnLYuszWs3g5Uf+r9t5X4Gy7pRpC8WUktt+gc8h+HuglRF/z7hR0hMbsQqL/9fpdN3lIQvPbJwJKoeGr0XDbQW/s/NizegmgnNiC90hPjMrTHLgVvYwgWp46CChunOKFMleDia8j4ybVQJWWdo60FL1RPsxR15oVMfJ+RTOC3o+4pECH0+FLcO4tXHaWVDkXp+ityBS2Pe+lbqjy5el56i64LdqDh0w1kPzkyL4q5El62F4rDv6GGQX1n2521j9fJx1c1RkKjJrQ4dRyCMyMM/LLSKRkg/1TTI4sjpLqgwxuQPmUSjHB346P/cC/4oHmteTpkUalQ1Odg===bwKV-----END PGP SIGNATURE-----
P
P
pkill9 wrote on 29 Dec 2017 00:15
(name . Marius Bakke)(address . mbakke@fastmail.com)(name . 29774)(address . 29774@debbugs.gnu.org)
E1eUhOh-0001lp-1S@rmmprod06.runbox
On Thu, 28 Dec 2017 18:48:04 +0100, Marius Bakke <mbakke@fastmail.com> wrote:
Toggle quote (27 lines)> pkill9@runbox.com writes:> > > Architecture: x86_64> >> > RAM: 4GB> >> > Filesystem: EXT4> >> > Guile version: 2.0.11> >> > Guile-Git (Guile module) was manually compiled and installed by me from> > https://gitlab.com/guile-git/guile-git> >> > Operating system: Slackware 14.2> >> > `uname -a` output: Linux slack 4.4.88 #2 SMP Thu Sep 14 14:21:06 CDT 2017> > x86_64 Intel(R) Core(TM) i3 CPU M 330 @ 2.13GHz GenuineIntel GNU/Linux> >> >> > Compilation failure when running `make` (after running `./bootstrap` and> > `./configure`) in latest git master and in latest source release tarball:> > 'In procedure memoize-variable-access!: gzip: unbound variable'> >> > Full output (error is at line 172): http://paste.debian.net/1001510> > This paste has expired. Can you attach the log here instead?
Here is the log:
Toggle quote (181 lines)> itsme@slack:~/guix-0.14.0$ make && make installmake all-recursive> make[1]: Entering directory '/home/itsme/guix-0.14.0'> Making all in po/guix> make[2]: Entering directory '/home/itsme/guix-0.14.0/po/guix'> make[2]: Leaving directory '/home/itsme/guix-0.14.0/po/guix'> Making all in po/packages> make[2]: Entering directory '/home/itsme/guix-0.14.0/po/packages'> make[2]: Leaving directory '/home/itsme/guix-0.14.0/po/packages'> make[2]: Entering directory '/home/itsme/guix-0.14.0'> Compiling Scheme modules...> LOAD guix/base16.scm> LOAD guix/base32.scm> LOAD guix/base64.scm> LOAD guix/cpio.scm> LOAD guix/records.scm> LOAD guix/gcrypt.scm> LOAD guix/hash.scm> LOAD guix/pk-crypto.scm> LOAD guix/pki.scm> LOAD guix/progress.scm> LOAD guix/combinators.scm> LOAD guix/memoization.scm> LOAD guix/utils.scm> LOAD guix/sets.scm> LOAD guix/modules.scm> LOAD guix/download.scm> LOAD guix/discovery.scm> LOAD guix/git-download.scm> LOAD guix/hg-download.scm> LOAD guix/monads.scm> LOAD guix/monad-repl.scm> LOAD guix/gexp.scm> LOAD guix/profiles.scm> LOAD guix/serialization.scm> LOAD guix/nar.scm> LOAD guix/derivations.scm> LOAD guix/grafts.scm> LOAD guix/gnu-maintenance.scm> LOAD guix/upstream.scm> LOAD guix/licenses.scm> LOAD guix/git.scm> LOAD guix/graph.scm> LOAD guix/cache.scm> LOAD guix/cve.scm> LOAD guix/workers.scm> LOAD guix/zlib.scm> LOAD guix/build-system.scm> LOAD guix/build-system/ant.scm> LOAD guix/build-system/cargo.scm> LOAD guix/build-system/cmake.scm> LOAD guix/build-system/dub.scm> LOAD guix/build-system/emacs.scm> LOAD guix/build-system/font.scm> LOAD guix/build-system/go.scm> LOAD guix/build-system/meson.scm> LOAD guix/build-system/minify.scm> LOAD guix/build-system/asdf.scm> LOAD guix/build-system/glib-or-gtk.scm> LOAD guix/build-system/gnu.scm> LOAD guix/build-system/haskell.scm> LOAD guix/build-system/perl.scm> LOAD guix/build-system/python.scm> LOAD guix/build-system/ocaml.scm> LOAD guix/build-system/waf.scm> LOAD guix/build-system/r.scm> LOAD guix/build-system/ruby.scm> LOAD guix/build-system/scons.scm> LOAD guix/build-system/texlive.scm> LOAD guix/build-system/trivial.scm> LOAD guix/ftp-client.scm> LOAD guix/http-client.scm> LOAD guix/gnupg.scm> LOAD guix/elf.scm> LOAD guix/store.scm> LOAD guix/cvs-download.scm> LOAD guix/svn-download.scm> LOAD guix/i18n.scm> LOAD guix/ui.scm> LOAD guix/build/ant-build-system.scm> LOAD guix/build/download.scm> LOAD guix/build/download-nar.scm> LOAD guix/build/cargo-build-system.scm> LOAD guix/build/cmake-build-system.scm> LOAD guix/build/dub-build-system.scm> LOAD guix/build/emacs-build-system.scm> LOAD guix/build/meson-build-system.scm> LOAD guix/build/minify-build-system.scm> LOAD guix/build/font-build-system.scm> LOAD guix/build/go-build-system.scm> LOAD guix/build/asdf-build-system.scm> LOAD guix/build/git.scm> LOAD guix/build/hg.scm> LOAD guix/build/glib-or-gtk-build-system.scm> LOAD guix/build/gnu-build-system.scm> LOAD guix/build/gnu-dist.scm> LOAD guix/build/perl-build-system.scm> LOAD guix/build/python-build-system.scm> LOAD guix/build/ocaml-build-system.scm> LOAD guix/build/r-build-system.scm> LOAD guix/build/ruby-build-system.scm> LOAD guix/build/scons-build-system.scm> LOAD guix/build/texlive-build-system.scm> LOAD guix/build/waf-build-system.scm> LOAD guix/build/haskell-build-system.scm> LOAD guix/build/store-copy.scm> LOAD guix/build/utils.scm> LOAD guix/build/union.scm> LOAD guix/build/profiles.scm> LOAD guix/build/compile.scm> LOAD guix/build/pull.scm> LOAD guix/build/rpath.scm> LOAD guix/build/cvs.scm> LOAD guix/build/svn.scm> LOAD guix/build/syscalls.scm> LOAD guix/build/gremlin.scm> LOAD guix/build/emacs-utils.scm> LOAD guix/build/java-utils.scm> LOAD guix/build/lisp-utils.scm> LOAD guix/build/graft.scm> LOAD guix/build/bournish.scm> LOAD guix/build/qt-utils.scm> LOAD guix/build/make-bootstrap.scm> LOAD guix/search-paths.scm> LOAD guix/packages.scm> LOAD guix/import/print.scm> LOAD guix/import/utils.scm> LOAD guix/import/gnu.scm> LOAD guix/import/snix.scm> LOAD guix/import/cabal.scm> LOAD guix/import/cran.scm> LOAD guix/import/hackage.scm> LOAD guix/import/elpa.scm> LOAD guix/import/texlive.scm> LOAD guix/scripts.scm> LOAD guix/scripts/download.scm> LOAD guix/scripts/perform-download.scm> LOAD guix/scripts/build.scm> LOAD guix/scripts/archive.scm> LOAD guix/scripts/import.scm> LOAD guix/scripts/package.scm> LOAD guix/scripts/gc.scm> LOAD guix/scripts/hash.scm> LOAD guix/scripts/pack.scm> Backtrace:> In ice-9/r4rs.scm:> 90: 19 [dynamic-wind #<procedure 1744360 at ice-9/eval.scm:416:20 ()> ...]> 90: 18 [dynamic-wind #<procedure 17442d0 at ice-9/eval.scm:416:20 ()> ...]> In ice-9/eval.scm:> 432: 17 [eval # #]> 432: 16 [eval # #]> 481: 15 [lp (#<fluid 16>) (#<output: void 11b7a90>)]> In ice-9/boot-9.scm:> 2864: 14 [resolve-interface (guix scripts pack) #:select ...]> 2789: 13 [#<procedure 1381ae0 at ice-9/boot-9.scm:2777:4 (name #:optional autoload version #:key ensure)> # ...]> 3065: 12 [try-module-autoload (guix scripts pack) #f]> 2401: 11 [save-module-excursion #<procedure 69daed0 at ice-9/boot-9.scm:3066:17 ()>]> 3085: 10 [#<procedure 69daed0 at ice-9/boot-9.scm:3066:17 ()>]> In unknown file:> ?: 9 [primitive-load-path "guix/scripts/pack" ...]> In ice-9/eval.scm:> 453: 8 [eval # ()]> 387: 7 [eval # ()]> 387: 6 [eval # ()]> 387: 5 [eval # ()]> 387: 4 [eval # ()]> 387: 3 [eval # ()]> 387: 2 [eval # ()]> 393: 1 [eval #<memoized gzip> ()]> In unknown file:> ?: 0 [memoize-variable-access! #<memoized gzip> #<directory # 6d10bd0>]> > ERROR: In procedure memoize-variable-access!:> ERROR: gzip: unbound variable> Makefile:5310: recipe for target 'make-go' failed> make[2]: *** [make-go] Error 1> make[2]: Leaving directory '/home/itsme/guix-0.14.0'> Makefile:4441: recipe for target 'all-recursive' failed> make[1]: *** [all-recursive] Error 1> make[1]: Leaving directory '/home/itsme/guix-0.14.0'> Makefile:3031: recipe for target 'all' failed> make: *** [all] Error 2
C
C
Chris Marusich wrote on 28 Jan 2018 11:12
(address . pkill9@runbox.com)
874ln6s34t.fsf@garuda.local.i-did-not-set--mail-host-address--so-tickle-me
<pkill9@runbox.com> writes:
Toggle quote (36 lines)>> Compiling Scheme modules...>>>> ...>>>> LOAD guix/scripts/pack.scm>> Backtrace:>> In ice-9/r4rs.scm:>> 90: 19 [dynamic-wind #<procedure 1744360 at ice-9/eval.scm:416:20 ()> ...]>> 90: 18 [dynamic-wind #<procedure 17442d0 at ice-9/eval.scm:416:20 ()> ...]>> In ice-9/eval.scm:>> 432: 17 [eval # #]>> 432: 16 [eval # #]>> 481: 15 [lp (#<fluid 16>) (#<output: void 11b7a90>)]>> In ice-9/boot-9.scm:>> 2864: 14 [resolve-interface (guix scripts pack) #:select ...]>> 2789: 13 [#<procedure 1381ae0 at ice-9/boot-9.scm:2777:4 (name #:optional autoload version #:key ensure)> # ...]>> 3065: 12 [try-module-autoload (guix scripts pack) #f]>> 2401: 11 [save-module-excursion #<procedure 69daed0 at ice-9/boot-9.scm:3066:17 ()>]>> 3085: 10 [#<procedure 69daed0 at ice-9/boot-9.scm:3066:17 ()>]>> In unknown file:>> ?: 9 [primitive-load-path "guix/scripts/pack" ...]>> In ice-9/eval.scm:>> 453: 8 [eval # ()]>> 387: 7 [eval # ()]>> 387: 6 [eval # ()]>> 387: 5 [eval # ()]>> 387: 4 [eval # ()]>> 387: 3 [eval # ()]>> 387: 2 [eval # ()]>> 393: 1 [eval #<memoized gzip> ()]>> In unknown file:>> ?: 0 [memoize-variable-access! #<memoized gzip> #<directory # 6d10bd0>]>> >> ERROR: In procedure memoize-variable-access!:>> ERROR: gzip: unbound variable
I can reproduce this error when attempting to build Guix 0.14.0 fromsource, using system-provided and custom built dependencies. I cannotreproduce it when using Guix-provided dependencies (e.g., by running'guix environment guix' and then manually building it).
I may have a work-around for you. Let me know if it works. Please trythe following:
1) Run a command like "make V=1". Because Guix uses GNU Automake, youcan get verbose output by adding "V=1" to the command ((automake)Automake Silent Rules). This will cause make to print the commands thatare being run.
2) Find the exact "compile-all.scm" invocation being used (it shouldappear right after the string "Compiling Scheme modules..." in the buildoutput). Copy it and run it manually from the root of the builddirectory (i.e., the directory containing the "configure" script), butinstead of passing it all the .scm files, only pass it the single fileguix/scripts/pack.scm.
3) If (2) succeeds in building the pack.go file, try running "make"again. Because the pack.go file is newer than the pack.scm file, itwon't need to be built again, which should allow you to bypass thisspecific problem. This worked for me, so I hope it works for you.
Why does it work? Well, the problem you observed occurs when runningthe make-go target of the Makefile, which does the following (this isfrom the Makefile.am file, which is used to produce the Makefile):
Toggle snippet (11 lines)make-go: $(MODULES) guix/config.scm $(dist_noinst_DATA) $(AM_V_at)echo "Compiling Scheme modules..." ; \ unset GUILE_LOAD_COMPILED_PATH ; \ XDG_CACHE_HOME=/nowhere \ host=$(host) srcdir="$(top_srcdir)" \ $(top_builddir)/pre-inst-env \ $(GUILE) -L "$(top_builddir)" -L "$(top_srcdir)" \ --no-auto-compile \ -s "$(top_srcdir)"/build-aux/compile-all.scm $^
Here, we are running build-aux/compile-all.scm on all the modules in asingle invocation. The script compile-all.scm compiles all the .scmfiles it receives as arguments into .go files. When it runs, it onlycompiles a .go file if the .go file doesn't exist or the corresponding.scm file is newer. It seems this problem has something to do withmemoizing the gzip variable while compiling many different modules inone run. By only running compile-all.scm on the single module pack.scm,it seems that we can avoid whatever condition is causing the problem tooccur.
As for what the actual issue is... I don't know. If somebody couldcreate a minimal reproduction of the issue, it would help. Theinformation above gives us an idea of where the issue is probablyoccurring, but it will require more work to narrow it down further.
-- Chris
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEEy/WXVcvn5+/vGD+x3UCaFdgiRp0FAlptoiIACgkQ3UCaFdgiRp1CExAAyY41xYeb8RrcDbzuAyvuJhXjZzsZJrnBqQDNkzh3gRwJqW0gSCnk7+d+htBb9hgcQKznvg+f6oMJxMjSqv0KI5impVzkpErRwtQMKn5P3nuKx6gf9vmHasBJQkhruoIqfN8BnTUYLxliG4Cdnh1i4ewkJA4iEfb/0/ng24YzbTcTBCaPec/PRgk6jLeKed4EePyzVStJhRjPJgC2fIBN/sCLoGu84kd8fm5FcG8s/odJ+smWTs+hCpfdjYjELL4vHD3kE8GFW6dhyy+JXTb+uTEZZmhK4r9QzYSxYYl+YS76WMHDWXHY8pwMLzYQMxEjzvAo2xR/M5jNoEycm2QKzOlS0spqtyLDrQF4gDOUf1yD4HoMBZZKSDYSmWgoIXVD/LP+ELwPn8JmxCTnss8SQbgGptMQuGPbfnB7g/Kvlf7DM+hT/vSsZdgzmW7BOJyfVUzAfQxoW/Yzz0JJPv6ouoRIeegrCJHj5n4BoEkmipD2lFDH/pqa4H1u1fEdBIcsNoUYWSjlTnlsS2HeHnScqKAJgDWtF7UWYi39PbctVsb9vhKrsbeMP4H4LueSbwp0vWq1Zm76b0BafC7fExNMovDNdQYX1eJTyyAb7dcl2Ij0O5cBOA/4d67pSG4dDoogeD5NgfzKgFIDj7tGL2LWsCBkaS1gYPuDgtZ7GxwrMNs==pP5W-----END PGP SIGNATURE-----
M
M
Mark H Weaver wrote on 23 Apr 2018 09:25
bug#29774: Compilation error on git master: `gzip: unbound variable`
(name . Ludovic Courtès)(address . ludo@gnu.org)(address . 29774@debbugs.gnu.org)
87efj65qr6.fsf@netris.org
Hi,
I've run into this same problem, on my x86_64 GuixSD system. To helpothers reproduce it, I've pushed a branch to Savannah, based on recentcore-updates. The branch is named 'reproduce-bug-29774'.
When I attempt to build this branch from a clean git checkout, within anenvironment produced by "guix environment guix" from recentcore-updates, it consistently fails with this error. If I simply revertthe commit at the tip of that branch (an early draft of my "Detectingduplicate field initializers" patch), then the problem does not occur.
I find it quite surprising that this apparently unrelated patch makesany difference to this bug, but that seems to be the case.
Ludovic, are you able to reproduce this problem on your system? Ifneeded, I could also provide the precise derivation of the buildenvironment profile, but I suspect that "guix environment guix" producedby any commit close to recent core-updates would work.
See below for the tail of my failed build log.
Mark

Toggle snippet (47 lines) LOAD guix/scripts/archive.scm LOAD guix/scripts/import.scm LOAD guix/scripts/package.scm LOAD guix/scripts/gc.scm LOAD guix/scripts/hash.scm LOAD guix/scripts/pack.scmBacktrace:In ice-9/boot-9.scm: 142:2 19 (dynamic-wind _ _ #<procedure 2701760 at ice-9/eval.scm:330:13 ()>) 142:2 18 (dynamic-wind _ _ #<procedure 27013e0 at ice-9/eval.scm:330:13 ()>)In ice-9/eval.scm: 619:8 17 (_ #(#(#<directory (guix build compile) 21988c0> #<variable 252b550 value: 674> #<procedure 26fe3c0 at ice-9/eval.scm:339:13 (a b c)> 1 # …))) 619:8 16 (_ #(#(#(#(#(#(#(#<directory (guix build compile) 21988c0> ("guix/scripts/pack.scm" "guix/scripts/pull.scm" "guix/scri…" …) …)) …) …) …) …) …))In ice-9/boot-9.scm: 152:2 15 (with-fluid* _ _ _) 2788:17 14 (resolve-interface (guix scripts pack) #:select _ #:hide _ #:prefix _ #:renamer _ #:version _) 2714:10 13 (_ (guix scripts pack) _ _ #:ensure _) 2982:16 12 (try-module-autoload _ _) 2312:4 11 (save-module-excursion #<procedure 60f7000 at ice-9/boot-9.scm:2983:17 ()>) 3002:22 10 (_)In unknown file: 9 (primitive-load-path "guix/scripts/pack" #<procedure 69e5f60 at ice-9/boot-9.scm:2989:32 ()>)In ice-9/eval.scm: 626:19 8 (_ #<directory (guix scripts pack) 7891960>) 173:39 7 (_ #<directory (guix scripts pack) 7891960>) 202:51 6 (_ #<directory (guix scripts pack) 7891960>) 202:35 5 (_ #<directory (guix scripts pack) 7891960>) 155:9 4 (_ #<directory (guix scripts pack) 7891960>) 202:35 3 (_ #<directory (guix scripts pack) 7891960>) 159:9 2 (_ #<directory (guix scripts pack) 7891960>) 223:20 1 (proc #<directory (guix scripts pack) 7891960>)In unknown file: 0 (%resolve-variable (7 . gzip) #<directory (guix scripts pack) 7891960>)
ERROR: In procedure %resolve-variable:gzip: unbound variable
Some deprecated features have been used. Set the environmentvariable GUILE_WARN_DEPRECATED to "detailed" and rerun theprogram to get more information. Set it to "no" to suppressthis message.make[2]: *** [Makefile:5344: make-go] Error 1make[2]: Leaving directory '/home/mhw/guix'make[1]: *** [Makefile:4456: all-recursive] Error 1make[1]: Leaving directory '/home/mhw/guix'make: *** [Makefile:3103: all] Error 2
L
L
Ludovic Courtès wrote on 18 Sep 2018 15:27
control message for bug #29774
(address . control@debbugs.gnu.org)
87k1njj5qf.fsf@gnu.org
severity 29774 important
L
L
Ludovic Courtès wrote on 22 Jan 2019 23:19
Re: bug#29774: Compilation error on git master: `gzip: unbound variable`
(name . Mark H Weaver)(address . mhw@netris.org)(address . 29774-done@debbugs.gnu.org)
87va2gibdk.fsf@gnu.org
Hi Mark,
Mark H Weaver <mhw@netris.org> skribis:
Toggle quote (13 lines)> I've run into this same problem, on my x86_64 GuixSD system. To help> others reproduce it, I've pushed a branch to Savannah, based on recent> core-updates. The branch is named 'reproduce-bug-29774'.>> When I attempt to build this branch from a clean git checkout, within an> environment produced by "guix environment guix" from recent> core-updates, it consistently fails with this error. If I simply revert> the commit at the tip of that branch (an early draft of my "Detecting> duplicate field initializers" patch), then the problem does not occur.>> I find it quite surprising that this apparently unrelated patch makes> any difference to this bug, but that seems to be the case.
[...]
Toggle quote (35 lines)> LOAD guix/scripts/package.scm> LOAD guix/scripts/gc.scm> LOAD guix/scripts/hash.scm> LOAD guix/scripts/pack.scm> Backtrace:> In ice-9/boot-9.scm:> 142:2 19 (dynamic-wind _ _ #<procedure 2701760 at ice-9/eval.scm:330:13 ()>)> 142:2 18 (dynamic-wind _ _ #<procedure 27013e0 at ice-9/eval.scm:330:13 ()>)> In ice-9/eval.scm:> 619:8 17 (_ #(#(#<directory (guix build compile) 21988c0> #<variable 252b550 value: 674> #<procedure 26fe3c0 at ice-9/eval.scm:339:13 (a b c)> 1 # …)))> 619:8 16 (_ #(#(#(#(#(#(#(#<directory (guix build compile) 21988c0> ("guix/scripts/pack.scm" "guix/scripts/pull.scm" "guix/scri…" …) …)) …) …) …) …) …))> In ice-9/boot-9.scm:> 152:2 15 (with-fluid* _ _ _)> 2788:17 14 (resolve-interface (guix scripts pack) #:select _ #:hide _ #:prefix _ #:renamer _ #:version _)> 2714:10 13 (_ (guix scripts pack) _ _ #:ensure _)> 2982:16 12 (try-module-autoload _ _)> 2312:4 11 (save-module-excursion #<procedure 60f7000 at ice-9/boot-9.scm:2983:17 ()>)> 3002:22 10 (_)> In unknown file:> 9 (primitive-load-path "guix/scripts/pack" #<procedure 69e5f60 at ice-9/boot-9.scm:2989:32 ()>)> In ice-9/eval.scm:> 626:19 8 (_ #<directory (guix scripts pack) 7891960>)> 173:39 7 (_ #<directory (guix scripts pack) 7891960>)> 202:51 6 (_ #<directory (guix scripts pack) 7891960>)> 202:35 5 (_ #<directory (guix scripts pack) 7891960>)> 155:9 4 (_ #<directory (guix scripts pack) 7891960>)> 202:35 3 (_ #<directory (guix scripts pack) 7891960>)> 159:9 2 (_ #<directory (guix scripts pack) 7891960>)> 223:20 1 (proc #<directory (guix scripts pack) 7891960>)> In unknown file:> 0 (%resolve-variable (7 . gzip) #<directory (guix scripts pack) 7891960>)>> ERROR: In procedure %resolve-variable:> gzip: unbound variable
I was able to reproduce it on this ‘reproduce-bug-29774’ branch, andalso by just cherry-picking the detect-duplicate-field-initializer patchon top of ‘master’.
As it turns out, build-aux/compile-all.scm was simply hiding the actualerror message, which was a duplicate field initializer in (gnu packageshaskell), and eventually threw that backtrace because (guix scriptspack) is the module that indirectly triggered the loading of (gnupackages haskell). (Setting ‘%load-verbosely’ is what helped me findout…)
Commit 1709b2e414195ae41a66d4fec37a25b1602629f7 lets those errormessages through, and commit 22a894bedd62181cdd382da3f0d49aea7fcd3a1aimplements duplicate field initializer detection in a way slightlydifferent from your original patch.
Thanks,Ludo’.
Closed
?
Your comment

This issue is archived.

To comment on this conversation send email to 29774@debbugs.gnu.org