GNU bug report logs - #24841
Cross-building bootstrap binaries fail in current master

Previous Next

Package: guix;

Reported by: ludo <at> gnu.org (Ludovic Courtès)

Date: Mon, 31 Oct 2016 22:00:02 UTC

Severity: normal

Done: Chris Marusich <cmmarusich <at> gmail.com>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 24841 in the body.
You can then email your comments to 24841 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-guix <at> gnu.org:
bug#24841; Package guix. (Mon, 31 Oct 2016 22:00:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to ludo <at> gnu.org (Ludovic Courtès):
New bug report received and forwarded. Copy sent to bug-guix <at> gnu.org. (Mon, 31 Oct 2016 22:00:03 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: ludo <at> gnu.org (Ludovic Courtès)
To: csanchezdll <at> gmail.com (Carlos Sánchez de La Lama)
Cc: guix-devel <at> gnu.org, bug-guix <at> gnu.org
Subject: Re: Cross-building bootstrap binaries fail in current master
Date: Mon, 31 Oct 2016 22:59:02 +0100
Hi Carlos,

csanchezdll <at> gmail.com (Carlos Sánchez de La Lama) skribis:

>> Regardless, cross-building ‘bootstrap-tarballs’ to one of the supported
>> target triplets works on master:
>>
>> --8<---------------cut here---------------start------------->8---
>> $ ./pre-inst-env guix build bootstrap-tarballs --target=mips64el-linux-gnu -n
>> substitute: updating list of substitutes from 'https://mirror.hydra.gnu.org'... 100.0%
>> The following files would be downloaded:
>>    /gnu/store/lwn9v9jhsllffpc3d4kii8bldw4hfppa-bootstrap-tarballs-0
>>    /gnu/store/6cm18hfwbp8c1mf6wha28f0b0axlcm8k-guile-static-stripped-tarball-2.0.11
>>    /gnu/store/f790i196x1ms2ym13pvbazldzicqv4k9-glibc-stripped-tarball-2.23
>>    /gnu/store/jj007dw6gc31hnn1qq3yz7rz1ai1z0fa-gcc-stripped-tarball-4.9.3
>>    /gnu/store/niqxni4hhjr2wvlabn92z1asqb7xcnsx-static-binaries-tarball-0
>>    /gnu/store/pskf0y5q3j5a3k30c0czd2xymwp4224i-binutils-static-stripped-tarball-2.25.1
>> $ git describe
>> v0.11.0-1764-g3ad7dce
>> --8<---------------cut here---------------end--------------->8---
>>
>> See:
>>
>>   https://hydra.gnu.org/job/gnu/master/mips64el-linux-gnu.bootstrap-tarballs-0.x86_64-linux
>>   https://hydra.gnu.org/job/gnu/master/mips64el-linux-gnuabi64.bootstrap-tarballs-0.x86_64-linux
>
> For efraim and for myself,
>
> guix build --target=mips64el-linux-gnu bootrap-tarballs
>
> got broken with commit
>
> b9bc6e842066b066ebdf9eaf75d41753598d75b5
>
> After some digging, I think I have found the root cause. That commit
> introduces a (otherwise fine) replacement for expat, but this triggers a
> problem:
>
> After package-cross-derivation has (sucesfully) cross-built the
> un-grafted bootstrap-tarballs derivation, it tries to resolve grafts,
> using (bag-grafts), which does:
>
>   (define target-grafts
>     (if target
>         (let ((->graft (input-cross-graft store target system)))
>           (fold-bag-dependencies (lambda (package grafts)
>                                    (match (->graft package)
>                                      (#f    grafts)
>                                      (graft (cons graft grafts))))
>                                  '()
>                                  bag
>                                  #:native? #f))
>
> Now, (fold-bag-dependencies) goes trhough *all* the dependencies, down to
> make-boot0. The replacement in expat causes this loop to apply
> (package-cross-derivation) to them, including those which are not
> cross-compilable, at which point building fails (make-boot0).

Indeed, looks like a genuine bug. Cc’ing bug-guix so we can keep track
of it.

> Probably building with --no-grafts is a suitable work-around, or
> cross-building expat beforehand (thus I won't need grafting) but I am
> leaving my store untoched for a while to be able to produce a proper
> fix.

Yeah, I’d suggest using --no-grafts until this is fixed.

Thanks,
Ludo’.




Information forwarded to bug-guix <at> gnu.org:
bug#24841; Package guix. (Tue, 28 Nov 2017 04:32:02 GMT) Full text and rfc822 format available.

Message #8 received at 24841 <at> debbugs.gnu.org (full text, mbox):

From: Chris Marusich <cmmarusich <at> gmail.com>
To: ludo <at> gnu.org (Ludovic Courtès)
Cc: guix-devel <at> gnu.org, 24841 <at> debbugs.gnu.org,
 Carlos Sánchez de La Lama <csanchezdll <at> gmail.com>
Subject: Re: bug#24841: Cross-building bootstrap binaries fail in current
 master
Date: Mon, 27 Nov 2017 20:31:07 -0800
[Message part 1 (text/plain, inline)]
ludo <at> gnu.org (Ludovic Courtès) writes:

>> For efraim and for myself,
>>
>> guix build --target=mips64el-linux-gnu bootrap-tarballs
>>
>> got broken with commit
>>
>> b9bc6e842066b066ebdf9eaf75d41753598d75b5
>>

This still fails.  The error I see today, using commit
5aa6e0d04a3f9dea06b9d35f04fa709b31e4b343, is the following:

--8<---------------cut here---------------start------------->8---
$ ./pre-inst-env guix build --substitute-urls='https://mirror.hydra.gnu.org https://hydra.gnu.org' --target=mips64el-linux-gnu bootstrap-tarballs
@ build-started /gnu/store/ybqid1nca0wjf0mvph82hl8f1dav4ann-make-boot0-4.2.1.drv - x86_64-linux /var/log/guix/drvs/yb//qid1nca0wjf0mvph82hl8f1dav4ann-make-boot0-4.2.1.drv.bz2
starting phase `set-SOURCE-DATE-EPOCH'
phase `set-SOURCE-DATE-EPOCH' succeeded after 0.0 seconds
starting phase `set-paths'
environment variable `PATH' set to `/gnu/store/bdbi6mlyci8d98szqhyzwxbb2pd6kw9w-gcc-cross-x86_64-linux-5.4.0/bin:/gnu/store/pdl320cy7axlq8ry87jqid7m0sgnm56n-binutils-cross-x86_64-linux-2.28/bin'
environment variable `CROSS_LIBRARY_PATH' set to `/gnu/store/jb6xbkm6jchhbp9l9nm05qnn3jzlnczl-glibc-bootstrap-0/lib:/gnu/store/inwi6s9x140rv8qhn7z3cpl2sj8in4vq-gcc-bootstrap-0/lib:/gnu/store/n47km143d64pbl8r55w741gpplg62jji-glibc-cross-x86_64-linux-2.25/lib'
environment variable `CROSS_C_INCLUDE_PATH' set to `/gnu/store/jb6xbkm6jchhbp9l9nm05qnn3jzlnczl-glibc-bootstrap-0/include:/gnu/store/inwi6s9
x140rv8qhn7z3cpl2sj8in4vq-gcc-bootstrap-0/include:/gnu/store/n47km143d64pbl8r55w741gpplg62jji-glibc-cross-x86_64-linux-2.25/include:/gnu/store/zm415fv9i70ablx8lpz2dmh4iyj7l5hy-linux-libre-headers-cross-x86_64-linux-4.4.47/include'
environment variable `CROSS_CPLUS_INCLUDE_PATH' set to `/gnu/store/jb6xbkm6jchhbp9l9nm05qnn3jzlnczl-glibc-bootstrap-0/include:/gnu/store/inwi6s9x140rv8qhn7z3cpl2sj8in4vq-gcc-bootstrap-0/include:/gnu/store/n47km143d64pbl8r55w741gpplg62jji-glibc-cross-x86_64-linux-2.25/include:/gnu/store/zm415fv9i70ablx8lpz2dmh4iyj7l5hy-linux-libre-headers-cross-x86_64-linux-4.4.47/include'
environment variable `CROSS_OBJC_INCLUDE_PATH' set to `/gnu/store/jb6xbkm6jchhbp9l9nm05qnn3jzlnczl-glibc-bootstrap-0/include:/gnu/store/inwi6s9x140rv8qhn7z3cpl2sj8in4vq-gcc-bootstrap-0/include:/gnu/store/n47km143d64pbl8r55w741gpplg62jji-glibc-cross-x86_64-linux-2.25/include:/gnu/store/zm415fv9i70ablx8lpz2dmh4iyj7l5hy-linux-libre-headers-cross-x86_64-linux-4.4.47/include'
environment variable `CROSS_OBJCPLUS_INCLUDE_PATH' set to `/gnu/store/jb6xbkm6jchhbp9l9nm05qnn3jzlnczl-glibc-bootstrap-0/include:/gnu/store/inwi6s9x140rv8qhn7z3cpl2sj8in4vq-gcc-bootstrap-0/include:/gnu/store/n47km143d64pbl8r55w741gpplg62jji-glibc-cross-x86_64-linux-2.25/include:/gnu/store/zm415fv9i70ablx8lpz2dmh4iyj7l5hy-linux-libre-headers-cross-x86_64-linux-4.4.47/include'
environment variable `GUIX_LOCPATH' unset
environment variable `CPATH' set to `/gnu/store/bdbi6mlyci8d98szqhyzwxbb2pd6kw9w-gcc-cross-x86_64-linux-5.4.0/include'
environment variable `LIBRARY_PATH' set to `/gnu/store/bdbi6mlyci8d98szqhyzwxbb2pd6kw9w-gcc-cross-x86_64-linux-5.4.0/lib'
phase `set-paths' succeeded after 0.0 seconds
starting phase `install-locale'
warning: failed to install 'en_US.utf8' locale: Invalid argument
phase `install-locale' succeeded after 0.0 seconds
starting phase `unpack'
In execvp of tar: No such file or directory
phase `unpack' failed after 0.0 seconds
builder for `/gnu/store/ybqid1nca0wjf0mvph82hl8f1dav4ann-make-boot0-4.2.1.drv' failed with exit code 1
@ build-failed /gnu/store/ybqid1nca0wjf0mvph82hl8f1dav4ann-make-boot0-4.2.1.drv - 1 builder for `/gnu/store/ybqid1nca0wjf0mvph82hl8f1dav4ann-make-boot0-4.2.1.drv' failed with exit code 1
cannot build derivation `/gnu/store/bb8hq0px9ij03nmls8a0j2ak248f9lyx-file-boot0-5.30.drv': 1 dependencies couldn't be built
guix build: error: build failed: build of `/gnu/store/bb8hq0px9ij03nmls8a0j2ak248f9lyx-file-boot0-5.30.drv' failed
--8<---------------cut here---------------end--------------->8---

>> Probably building with --no-grafts is a suitable work-around, or
>> cross-building expat beforehand (thus I won't need grafting) but I am
>> leaving my store untoched for a while to be able to produce a proper
>> fix.
>
> Yeah, I’d suggest using --no-grafts until this is fixed.

Are you sure this work-around works?  When I add --no-grafts, I get the
following error:

--8<---------------cut here---------------start------------->8---
$ ./pre-inst-env guix build --substitute-urls='https://mirror.hydra.gnu.org https://hydra.gnu.org' --no-grafts --target=mips64el-linux-gnu bootstrap-tarballs
substitute: updating list of substitutes from 'https://mirror.hydra.gnu.org'... 100.0%
substitute: updating list of substitutes from 'https://hydra.gnu.org'... 100.0%
The following derivations will be built:
   /gnu/store/x9wixafhlhrwaimp5dyf4g3m4b900h9y-bootstrap-tarballs-0.drv
   /gnu/store/hi7magp0zhkrd7fy25vwv2skl2x3j2lv-guile-static-2.2.2.drv
   /gnu/store/yil4gm5maipjf1yb5fw9gy8l2hy975mr-guile-static-stripped-2.2.2.drv
   /gnu/store/qb3s4zi7j22s8awrlck1872myivxr1rg-guile-static-stripped-tarball-2.2.2.drv
237.1 MB will be downloaded:
   /gnu/store/3fkfgpw2px7dshl2rfjbng6ddsyr6k4f-linux-libre-headers-cross-mips64el-linux-gnu-4.4.47
   /gnu/store/3ymkvl8nmk80w05vv77y45mf4nv4qa1j-gmp-6.1.2
   /gnu/store/pbrwkg2lzscphkyjxzdphr63bqcm20r8-glibc-cross-mips64el-linux-gnu-2.25
   /gnu/store/wxyf3y3bsrw77fi6r0505hwlzmanyj26-gcc-cross-mips64el-linux-gnu-5.4.0
   /gnu/store/9fnprlh8fwnfyjnmp3n6ybx58mwy8260-readline-7.0
   /gnu/store/4kjvw1mfg8300vgxx97x0vvarjb0yzss-ncurses-6.0
   /gnu/store/bx9qvznmzq39h8gb1zv4c28kdnkbd8ls-pkg-config-mips64el-linux-gnu-0.29.2
   /gnu/store/pp3w43w92a8kbnaj87zfc53bwsr7vsz4-binutils-cross-mips64el-linux-gnu-2.28
   /gnu/store/bymc1f0i3wkhhwwf20ffp6i1gmxq892a-libltdl-2.4.6
   /gnu/store/smfrwm4qfj77l6ynq9d7awyjjqwas648-guile-static-2.2.2
   /gnu/store/h3nyn8p99b9m9y353prn497zpvw4z2jr-gcc-cross-mips64el-linux-gnu-5.4.0
   /gnu/store/5mr2hikzw7bp7h1q4xabqbjqqx558hn5-glibc-cross-mips64el-linux-gnu-2.25
   /gnu/store/04kqafjrc2raiq7dzdkbpm31i5awrmqw-libffi-3.2.1
   /gnu/store/31pi2pm80mm2w03hy3cbg7xc6adqjsvm-libgc-7.6.0
   /gnu/store/mzcz5clxs7kiqrz7570wvj8gd6zj4wc9-bash-minimal-4.4.12
   /gnu/store/n2ha7xz4690mm7n5zjr8fg46va56ny9f-libunistring-0.9.7
   /gnu/store/l5wwzf579w7p2xgvymqxrwjcg6h9r4jr-linux-libre-headers-cross-mips64el-linux-gnu-4.4.47
   /gnu/store/jinmblfjidfxlgdljpnx9dgbb0pwc6gf-binutils-static-stripped-tarball-2.28
   /gnu/store/hrn7px45c3frag4djmqf3ykknybwcrjz-linux-libre-headers-4.4.47
   /gnu/store/35ik0amrcfjg3fql64v3ylr1yyqj9d63-gcc-stripped-tarball-5.4.0
   /gnu/store/wvyqv1jazydcglfnqq8v7nxjwn8cf1f1-glibc-stripped-tarball-2.25
   /gnu/store/ip0k6kiams7sj4l2q6zlv3ih6mjf539s-static-binaries-tarball-0
   /gnu/store/5sdf53qnqwdsvnvk6vg01yiz9wxjx082-glibc-cross-mips64el-linux-gnu-2.25
   /gnu/store/0qsh7cxkmpbdmmc48ks6ba4i3c28gncx-gcc-cross-sans-libc-mips64el-linux-gnu-5.4.0
   /gnu/store/xnj1538h60rh679v05847g0bkwlj8x9a-ld-wrapper-mips64el-linux-gnu-0
   /gnu/store/kqic8p5d41k2m9a2la5ljx8h7f8rgd4z-libffi-3.2.1
   /gnu/store/2ks7gskdfc3yk493kga79z0ik2kvw3n5-libatomic-ops-7.4.4
@ substituter-started /gnu/store/jinmblfjidfxlgdljpnx9dgbb0pwc6gf-binutils-static-stripped-tarball-2.28 /gnu/store/d0xkr3d3zyqrnsh31vp0qdavp3anh6ml-guix-0.13.0-10.0b4c385/libexec/guix/substitute
...
@ build-started /gnu/store/hi7magp0zhkrd7fy25vwv2skl2x3j2lv-guile-static-2.2.2.drv - x86_64-linux /var/log/guix/drvs/hi//7magp0zhkrd7fy25vwv2skl2x3j2lv-guile-static-2.2.2.drv.bz2
...
wrote `web/http.go'
  GUILEC web/uri.go
wrote `web/server/http.go'
  GUILEC language/elisp/boot.go
Backtrace:
In srfi/srfi-1.scm:
    640:9 19 (for-each #<procedure cc8a00 at scripts/compile.scm:24?> ?)
In scripts/compile.scm:
   251:26 18 (_ _)
In system/base/target.scm:
     57:6 17 (with-target _ _)
In system/base/compile.scm:
   139:28 16 (compile-file "language/elisp/boot.el" #:output-file _ # ?)
In system/base/language.scm:
   110:30 15 (default-environment _)
    62:11 14 (lookup-language elisp)
In ice-9/boot-9.scm:
  2718:10 13 (_ (language elisp spec) _ _ #:ensure _)
  2986:16 12 (try-module-autoload _ _)
   2316:4 11 (save-module-excursion _)
  3006:22 10 (_)
In unknown file:
           9 (primitive-load-path "language/elisp/spec" #<procedure ?>)
In system/base/compile.scm:
    165:4  8 (compile-and-load _ #:from _ #:to _ #:env _ #:opts _ # _)
   235:18  7 (read-and-compile #<input: language/elisp/boot.el 13> # ?)
   183:32  6 (compile-fold (#<procedure compile-tree-il (expr env ?>) ?)
In language/elisp/compile-tree-il.scm:
    805:5  5 (compile-tree-il (defmacro @ (module symbol) (#{`}# ?)) ?)
   705:11  4 (_ _ _)
In system/base/compile.scm:
    255:6  3 (compile _ #:from _ #:to _ #:env _ #:opts _)
   183:32  2 (compile-fold _ #<tree-il (seq (call (@ (language elis?> ?)
In language/bytecode/spec.scm:
    28:15  1 (bytecode->value #vu8(127 69 76 70 1 1 1 255 0 0 0 0 ?) ?)
In unknown file:
           0 (load-thunk-from-memory #vu8(127 69 76 70 1 1 1 255 0 ?))

ERROR: In procedure load-thunk-from-memory:
ERROR: In procedure load-thunk-from-memory: No such file or directory
make[2]: *** [Makefile:2266: language/elisp/boot.go] Error 1
make[2]: *** Waiting for unfinished jobs....
wrote `web/uri.go'
make[2]: Leaving directory '/tmp/guix-build-guile-static-2.2.2.drv-0/guile-2.2.2/module'
make[1]: *** [Makefile:1857: all-recursive] Error 1
make[1]: Leaving directory '/tmp/guix-build-guile-static-2.2.2.drv-0/guile-2.2.2'
make: *** [Makefile:1743: all] Error 2
phase `build' failed after 732.1 seconds
builder for `/gnu/store/hi7magp0zhkrd7fy25vwv2skl2x3j2lv-guile-static-2.2.2.drv' failed with exit code 1
@ build-failed /gnu/store/hi7magp0zhkrd7fy25vwv2skl2x3j2lv-guile-static-2.2.2.drv - 1 builder for `/gnu/store/hi7magp0zhkrd7fy25vwv2skl2x3j2lv-guile-static-2.2.2.drv' failed with exit code 1
cannot build derivation `/gnu/store/yil4gm5maipjf1yb5fw9gy8l2hy975mr-guile-static-stripped-2.2.2.drv': 1 dependencies couldn't be built
cannot build derivation `/gnu/store/qb3s4zi7j22s8awrlck1872myivxr1rg-guile-static-stripped-tarball-2.2.2.drv': 1 dependencies couldn't be built
cannot build derivation `/gnu/store/x9wixafhlhrwaimp5dyf4g3m4b900h9y-bootstrap-tarballs-0.drv': 1 dependencies couldn't be built
guix build: error: build failed: build of `/gnu/store/x9wixafhlhrwaimp5dyf4g3m4b900h9y-bootstrap-tarballs-0.drv' failed

--8<---------------cut here---------------end--------------->8---

Does the --no-grafts workaround actually work?

Or, is it that the work-around works, but for some other reason
guile-static-2.2.2 fails to cross-build on an x86_64-linux Guix system
for the mips64el-linux-gnu target?

-- 
Chris
[signature.asc (application/pgp-signature, inline)]

Information forwarded to bug-guix <at> gnu.org:
bug#24841; Package guix. (Thu, 22 Feb 2018 09:48:02 GMT) Full text and rfc822 format available.

Message #11 received at 24841 <at> debbugs.gnu.org (full text, mbox):

From: Chris Marusich <cmmarusich <at> gmail.com>
To: bug#24841 <24841 <at> debbugs.gnu.org>
Subject: Re: Status: Cross-building bootstrap binaries fail in current master
Date: Thu, 22 Feb 2018 10:47:16 +0100
[Message part 1 (text/plain, inline)]
Hi,

The core-updates branch has been merged into master.  As of
5ce3f93bc52280c7c2b1b96097e8cd4a62b53bb0 (committed on 2018/02/18),
which is after the merge, the following builds PASS or FAIL when run on
an x86_64-linux GuixSD system:

FAIL:  aarch64-unknown-linux-gnu    bootstrap-tarballs  grafts
FAIL:  aarch64-unknown-linux-gnu    bootstrap-tarballs  no-grafts
PASS:  aarch64-unknown-linux-gnu    guile-static        grafts
PASS:  aarch64-unknown-linux-gnu    guile-static        no-grafts
FAIL:  arm-unknown-linux-gnueabihf  bootstrap-tarballs  grafts
FAIL:  arm-unknown-linux-gnueabihf  bootstrap-tarballs  no-grafts
PASS:  arm-unknown-linux-gnueabihf  guile-static        grafts
PASS:  arm-unknown-linux-gnueabihf  guile-static        no-grafts
FAIL:  i686-unknown-linux-gnu       bootstrap-tarballs  grafts
FAIL:  i686-unknown-linux-gnu       bootstrap-tarballs  no-grafts
PASS:  i686-unknown-linux-gnu       guile-static        grafts
PASS:  i686-unknown-linux-gnu       guile-static        no-grafts
FAIL:  mips64el-unknown-linux-gnu   bootstrap-tarballs  grafts
FAIL:  mips64el-unknown-linux-gnu   bootstrap-tarballs  no-grafts
PASS:  mips64el-unknown-linux-gnu   guile-static        grafts
PASS:  mips64el-unknown-linux-gnu   guile-static        no-grafts
FAIL:  x86_64-unknown-linux-gnu     bootstrap-tarballs  grafts
FAIL:  x86_64-unknown-linux-gnu     bootstrap-tarballs  no-grafts
FAIL:  x86_64-unknown-linux-gnu     guile-static        grafts
FAIL:  x86_64-unknown-linux-gnu     guile-static        no-grafts

Here, PASS means it builds successfully.  FAIL means it did not.  The
second column is the target, the third column is the package, and the
fourth column is whether or not grafts were enabled.  Note that
"guile-static" is short-hand for "-e '(@@ (gnu packages make-bootstrap)
%guile-static)'".  So, for example, the first row means that the
following command failed when I tried it:

    ./pre-inst-env guix build --target=aarch64-unknown-linux-gnu \
        bootstrap-tarballs

The failures can be grouped as follows:

* aarch64, arm, i686: For all of these targets, bootstrap-tarballs fails
  because grep <at> 3.1 fails.  grep <at> 3.1 fails because of errors like the
  following:

--8<---------------cut here---------------start------------->8---
make[2]: Entering directory '/tmp/guix-build-grep-3.1.drv-0/grep-3.1/src'
  CC       dfasearch.o
  CC       grep.o
  CC       kwsearch.o
  CC       kwset.o
  CC       pcresearch.o
  CC       searchutils.o
  GEN      egrep
  GEN      fgrep
  CCLD     grep
/gnu/store/p2b76bgsx5pkpc59fvxmkfz47502awg5-pcre-8.41/lib/libpcre.a(libpcre_la-pcre_jit_compile.o): In function `sljit_free_exec':
(.text+0x64d): undefined reference to `pthread_mutex_lock'
/gnu/store/p2b76bgsx5pkpc59fvxmkfz47502awg5-pcre-8.41/lib/libpcre.a(libpcre_la-pcre_jit_compile.o): In function `sljit_free_exec':
(.text+0x6ac): undefined reference to `pthread_mutex_unlock'
/gnu/store/p2b76bgsx5pkpc59fvxmkfz47502awg5-pcre-8.41/lib/libpcre.a(libpcre_la-pcre_jit_compile.o): In function `sljit_generate_code':
(.text+0x73e4): undefined reference to `pthread_mutex_lock'
/gnu/store/p2b76bgsx5pkpc59fvxmkfz47502awg5-pcre-8.41/lib/libpcre.a(libpcre_la-pcre_jit_compile.o): In function `sljit_generate_code':
(.text+0x74b0): undefined reference to `pthread_mutex_unlock'
/gnu/store/p2b76bgsx5pkpc59fvxmkfz47502awg5-pcre-8.41/lib/libpcre.a(libpcre_la-pcre_jit_compile.o): In function `sljit_generate_code':
(.text+0x7847): undefined reference to `pthread_mutex_unlock'
/gnu/store/p2b76bgsx5pkpc59fvxmkfz47502awg5-pcre-8.41/lib/libpcre.a(libpcre_la-pcre_jit_compile.o): In function `pcre_jit_free_unused_memory':
(.text+0x2462a): undefined reference to `pthread_mutex_lock'
/gnu/store/p2b76bgsx5pkpc59fvxmkfz47502awg5-pcre-8.41/lib/libpcre.a(libpcre_la-pcre_jit_compile.o): In function `pcre_jit_free_unused_memory':
(.text+0x24692): undefined reference to `pthread_mutex_unlock'
/gnu/store/spfsrm8cqxh7qs8j76ml6x989z2hy49y-gcc-cross-i686-unknown-linux-gnu-5.5.0/lib/gcc/i686-unknown-linux-gnu/5.5.0/libgcc_eh.a(unwind-dw2-fde-dip.o): In function `__gthread_mutex_lock':
/tmp/guix-build-gcc-cross-i686-unknown-linux-gnu-5.5.0.drv-0/build/i686-unknown-linux-gnu/libgcc/./gthr-default.h:748: undefined reference to `pthread_mutex_lock'
/gnu/store/spfsrm8cqxh7qs8j76ml6x989z2hy49y-gcc-cross-i686-unknown-linux-gnu-5.5.0/lib/gcc/i686-unknown-linux-gnu/5.5.0/libgcc_eh.a(unwind-dw2-fde-dip.o): In function `__gthread_mutex_unlock':
/tmp/guix-build-gcc-cross-i686-unknown-linux-gnu-5.5.0.drv-0/build/i686-unknown-linux-gnu/libgcc/./gthr-default.h:778: undefined reference to `pthread_mutex_unlock'
/gnu/store/spfsrm8cqxh7qs8j76ml6x989z2hy49y-gcc-cross-i686-unknown-linux-gnu-5.5.0/lib/gcc/i686-unknown-linux-gnu/5.5.0/libgcc_eh.a(unwind-dw2-fde-dip.o): In function `__gthread_mutex_lock':
/tmp/guix-build-gcc-cross-i686-unknown-linux-gnu-5.5.0.drv-0/build/i686-unknown-linux-gnu/libgcc/./gthr-default.h:748: undefined reference to `pthread_mutex_lock'
/gnu/store/spfsrm8cqxh7qs8j76ml6x989z2hy49y-gcc-cross-i686-unknown-linux-gnu-5.5.0/lib/gcc/i686-unknown-linux-gnu/5.5.0/libgcc_eh.a(unwind-dw2-fde-dip.o): In function `__gthread_mutex_unlock':
/tmp/guix-build-gcc-cross-i686-unknown-linux-gnu-5.5.0.drv-0/build/i686-unknown-linux-gnu/libgcc/./gthr-default.h:778: undefined reference to `pthread_mutex_unlock'
/gnu/store/spfsrm8cqxh7qs8j76ml6x989z2hy49y-gcc-cross-i686-unknown-linux-gnu-5.5.0/lib/gcc/i686-unknown-linux-gnu/5.5.0/libgcc_eh.a(unwind-dw2-fde-dip.o): In function `__gthread_mutex_lock':
/tmp/guix-build-gcc-cross-i686-unknown-linux-gnu-5.5.0.drv-0/build/i686-unknown-linux-gnu/libgcc/./gthr-default.h:748: undefined reference to `pthread_mutex_lock'
/gnu/store/spfsrm8cqxh7qs8j76ml6x989z2hy49y-gcc-cross-i686-unknown-linux-gnu-5.5.0/lib/gcc/i686-unknown-linux-gnu/5.5.0/libgcc_eh.a(unwind-dw2-fde-dip.o): In function `__gthread_mutex_unlock':
/tmp/guix-build-gcc-cross-i686-unknown-linux-gnu-5.5.0.drv-0/build/i686-unknown-linux-gnu/libgcc/./gthr-default.h:778: undefined reference to `pthread_mutex_unlock'
/gnu/store/spfsrm8cqxh7qs8j76ml6x989z2hy49y-gcc-cross-i686-unknown-linux-gnu-5.5.0/lib/gcc/i686-unknown-linux-gnu/5.5.0/libgcc_eh.a(unwind-dw2-fde-dip.o): In function `__gthread_mutex_lock':
/tmp/guix-build-gcc-cross-i686-unknown-linux-gnu-5.5.0.drv-0/build/i686-unknown-linux-gnu/libgcc/./gthr-default.h:748: undefined reference to `pthread_mutex_lock'
/gnu/store/spfsrm8cqxh7qs8j76ml6x989z2hy49y-gcc-cross-i686-unknown-linux-gnu-5.5.0/lib/gcc/i686-unknown-linux-gnu/5.5.0/libgcc_eh.a(unwind-dw2-fde-dip.o): In function `__gthread_mutex_unlock':
/tmp/guix-build-gcc-cross-i686-unknown-linux-gnu-5.5.0.drv-0/build/i686-unknown-linux-gnu/libgcc/./gthr-default.h:778: undefined reference to `pthread_mutex_unlock'
/gnu/store/spfsrm8cqxh7qs8j76ml6x989z2hy49y-gcc-cross-i686-unknown-linux-gnu-5.5.0/lib/gcc/i686-unknown-linux-gnu/5.5.0/libgcc_eh.a(unwind-dw2-fde-dip.o): In function `__gthread_mutex_lock':
/tmp/guix-build-gcc-cross-i686-unknown-linux-gnu-5.5.0.drv-0/build/i686-unknown-linux-gnu/libgcc/./gthr-default.h:748: undefined reference to `pthread_mutex_lock'
/gnu/store/spfsrm8cqxh7qs8j76ml6x989z2hy49y-gcc-cross-i686-unknown-linux-gnu-5.5.0/lib/gcc/i686-unknown-linux-gnu/5.5.0/libgcc_eh.a(unwind-dw2-fde-dip.o): In function `__gthread_mutex_unlock':
/tmp/guix-build-gcc-cross-i686-unknown-linux-gnu-5.5.0.drv-0/build/i686-unknown-linux-gnu/libgcc/./gthr-default.h:778: undefined reference to `pthread_mutex_unlock'
/tmp/guix-build-gcc-cross-i686-unknown-linux-gnu-5.5.0.drv-0/build/i686-unknown-linux-gnu/libgcc/./gthr-default.h:778: undefined reference to `pthread_mutex_unlock'
collect2: error: ld returned 1 exit status
make[2]: *** [Makefile:1317: grep] Error 1
make[2]: Leaving directory '/tmp/guix-build-grep-3.1.drv-0/grep-3.1/src'
make[1]: *** [Makefile:1301: all-recursive] Error 1
make[1]: Leaving directory '/tmp/guix-build-grep-3.1.drv-0/grep-3.1'
make: *** [Makefile:1242: all] Error 2
phase `build' failed after 14.3 seconds
builder for `/gnu/store/db1xy331abifx0r2jbi6q9zcbcmhf1b1-grep-3.1.drv' failed with exit code 1
--8<---------------cut here---------------end--------------->8---

* mips64el: bootstrap-tarballs fails because pcre <at> 8.41 fails.  pcre <at> 8.41
  fails because of the following error:

--8<---------------cut here---------------start------------->8---
make[1]: Entering directory '/tmp/guix-build-pcre-8.41.drv-0/pcre-8.41'
  CC       libpcre_la-pcre_compile.lo
  CC       libpcre_la-pcre_byte_order.lo
  CC       libpcre_la-pcre_config.lo
  CC       libpcre_la-pcre_dfa_exec.lo
  CC       libpcre_la-pcre_exec.lo
  CC       libpcre_la-pcre_fullinfo.lo
  CC       libpcre_la-pcre_get.lo
  CC       libpcre_la-pcre_globals.lo
  CC       libpcre_la-pcre_jit_compile.lo
In file included from sljit/sljitLir.c:1747:0,
                 from pcre_jit_compile.c:62:
sljit/sljitNativeMIPS_common.c: In function ?sljit_has_cpu_feature?:
sljit/sljitNativeMIPS_common.c:506:3: error: a label can only be part of a statement and a declaration is not a statement
   sljit_sw fir;
   ^
make[1]: *** [Makefile:1730: libpcre_la-pcre_jit_compile.lo] Error 1
make[1]: *** Waiting for unfinished jobs....
make[1]: Leaving directory '/tmp/guix-build-pcre-8.41.drv-0/pcre-8.41'
make: *** [Makefile:1322: all] Error 2
phase `build' failed after 29.4 seconds
builder for `/gnu/store/16sgy03d1f21qkn8895nq8ddpa7a14vz-pcre-8.41.drv' failed with exit code 1
--8<---------------cut here---------------end--------------->8---

* x86_64: I'm not sure if it makes sense to cross-compile for x86_64 on
  an x86_64 system, but I tried it anyway, and bootstrap-tarballs and
  guile-static both fail because of an error like the following:

--8<---------------cut here---------------start------------->8---
g++   -g -O2 -DIN_GCC    -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wno-format -Wmissing-format-attribute -Woverloaded-virtual -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -fno-common  -DHAVE_CONFIG_H -static-libstdc++ -static-libgcc  -o cc1 c/c-lang.o c-family/stub-objc.o attribs.o c/c-errors.o c/c-decl.o c/c-typeck.o c/c-convert.o c/c-aux-info.o c/c-objc-common.o c/c-parser.o c/c-array-notation.o c-family/c-common.o c-family/c-cppbuiltin.o c-family/c-dump.o c-family/c-format.o c-family/c-gimplify.o c-family/c-lex.o c-family/c-omp.o c-family/c-opts.o c-family/c-pch.o c-family/c-ppoutput.o c-family/c-pragma.o c-family/c-pretty-print.o c-family/c-semantics.o c-family/c-ada-spec.o c-family/c-cilkplus.o c-family/array-notation-common.o c-family/cilk.o c-family/c-ubsan.o i386-c.o glibc-c.o \
  cc1-checksum.o libbackend.a main.o tree-browser.o libcommon-target.a libcommon.a ../libcpp/libcpp.a ../libdecnumber/libdecnumber.a libcommon.a ../libcpp/libcpp.a   ../libbacktrace/.libs/libbacktrace.a ../libiberty/libiberty.a ../libdecnumber/libdecnumber.a  -lisl -lmpc -lmpfr -lgmp -rdynamic -ldl  -lz
g++   -g -O2 -DIN_GCC    -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wno-format -Wmissing-format-attribute -Woverloaded-virtual -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -fno-common  -DHAVE_CONFIG_H -static-libstdc++ -static-libgcc  -o cc1plus \
      cp/cp-lang.o c-family/stub-objc.o cp/call.o cp/decl.o cp/expr.o cp/pt.o cp/typeck2.o cp/class.o cp/decl2.o cp/error.o cp/lex.o cp/parser.o cp/ptree.o cp/rtti.o cp/typeck.o cp/cvt.o cp/except.o cp/friend.o 
cp/init.o cp/method.o cp/search.o cp/semantics.o cp/tree.o cp/repo.o cp/dump.o cp/optimize.o cp/mangle.o cp/cp-objcp-common.o cp/name-lookup.o cp/cxx-pretty-print.o cp/cp-cilkplus.o cp/cp-gimplify.o cp/cp-array-notation.o cp/lambda.o cp/vtable-class-hierarchy.o cp/constexpr.o cp/cp-ubsan.o attribs.o incpath.o c-family/c-common.o c-family/c-cppbuiltin.o c-family/c-dump.o c-family/c-format.o c-family/c-gimplify.o c-family/c-lex.o c-family/c-omp.o c-family/c-opts.o c-family/c-pch.o c-family/c-ppoutput.o c-family/c-pragma.o c-family/c-pretty-print.o c-family/c-semantics.o c-family/c-ada-spec.o c-family/c-cilkplus.o c-family/array-notation-common.o c-family/cilk.o c-family/c-ubsan.o i386-c.o glibc-c.o cc1plus-checksum.o libbackend.a main.o tree-browser.o libcommon-target.a libcommon.a ../libcpp/libcpp.a ../libdecnumber/libdecnumber.a libcommon.a ../libcpp/libcpp.a   ../libbacktrace/.libs/libbacktrace.a ../libiberty/libiberty.a ../libdecnumber/libdecnumber.a  -lisl -lmpc -lmpfr -lgmp -rdynamic -ldl  -lz
echo | /tmp/guix-build-gcc-cross-sans-libc-x86_64-unknown-linux-gnu-5.5.0.drv-0/build/./gcc/xgcc -B/tmp/guix-build-gcc-cross-sans-libc-x86_64-unknown-linux-gnu-5.5.0.drv-0/build/./gcc/ -E -dM - | \
  sed -n -e 's/^#define \([^_][a-zA-Z0-9_]*\).*/\1/p' \
         -e 's/^#define \(_[^_A-Z][a-zA-Z0-9_]*\).*/\1/p' | \
  sort -u > tmp-macro_list
/tmp/guix-build-gcc-cross-sans-libc-x86_64-unknown-linux-gnu-5.5.0.drv-0/build/./gcc/cc1: error while loading shared libraries: libisl.so.15: cannot open shared object file: No such file or directory
/gnu/store/icz3hd36aqpjz5slyp4hhr8wsfbgiml1-bash-minimal-4.4.12/bin/bash ../../gcc-5.5.0/gcc/../move-if-change tmp-macro_list macro_list
echo timestamp > s-macro_list
rm -rf include-fixed; mkdir include-fixed
chmod a+rx include-fixed
if [ -d ../prev-gcc ]; then \
  cd ../prev-gcc && \
  make real-install-headers-tar DESTDIR=`pwd`/../gcc/ \
    libsubdir=. ; \
else \
  set -e; for ml in `cat fixinc_list`; do \
    sysroot_headers_suffix=`echo ${ml} | sed -e 's/;.*$//'`; \
    multi_dir=`echo ${ml} | sed -e 's/^[^;]*;//'`; \
    fix_dir=include-fixed${multi_dir}; \
    if ! false && test ! -d `echo /usr/include | sed -e :a -e 's,[^/]*/\.\.\/,,' -e ta`; then \
      echo The directory that should contain system headers does not exist: >&2 ; \
      echo "  `echo /usr/include | sed -e :a -e 's,[^/]*/\.\.\/,,' -e ta`" >&2 ; \
      tooldir_sysinc=`echo "/gnu/store/7yk3imgyc20dxbq8zn4d61m95d6pyzhr-gcc-cross-sans-libc-x86_64-unknown-linux-gnu-5.5.0/lib/gcc/x86_64-unknown-linux-gnu/5.5.0/../../../../x86_64-unknown-linux-gnu/sys-include" | sed -e :a -e "s,[^/]*/\.\.\/,," -e ta`; \
      if test "x`echo /usr/include | sed -e :a -e 's,[^/]*/\.\.\/,,' -e ta`" = "x${tooldir_sysinc}"; \
      then sleep 1; else exit 1; fi; \
    fi; \
    /gnu/store/icz3hd36aqpjz5slyp4hhr8wsfbgiml1-bash-minimal-4.4.12/bin/bash ../../gcc-5.5.0/gcc/../mkinstalldirs ${fix_dir}; \
    chmod a+rx ${fix_dir} || true; \
    (TARGET_MACHINE='x86_64-unknown-linux-gnu'; srcdir=`cd ../../gcc-5.5.0/gcc; ${PWDCMD-pwd}`; \
      SHELL='/gnu/store/icz3hd36aqpjz5slyp4hhr8wsfbgiml1-bash-minimal-4.4.12/bin/bash'; MACRO_LIST=`${PWDCMD-pwd}`/macro_list ; \
      gcc_dir=`${PWDCMD-pwd}` ; \
      export TARGET_MACHINE srcdir SHELL MACRO_LIST && \
      cd ../build-x86_64-unknown-linux-gnu/fixincludes && \
      /gnu/store/icz3hd36aqpjz5slyp4hhr8wsfbgiml1-bash-minimal-4.4.12/bin/bash ./fixinc.sh "${gcc_dir}/${fix_dir}" \
        `echo /usr/include | sed -e :a -e 's,[^/]*/\.\.\/,,' -e ta`  ); \
    rm -f ${fix_dir}/syslimits.h; \
    if [ -f ${fix_dir}/limits.h ]; then \
      mv ${fix_dir}/limits.h ${fix_dir}/syslimits.h; \
    else \   
      cp ../../gcc-5.5.0/gcc/gsyslimits.h ${fix_dir}/syslimits.h; \
    fi; \
    chmod a+r ${fix_dir}/syslimits.h; \
  done; \
fi
The directory that should contain system headers does not exist:
  /usr/include
make[3]: *** [Makefile:2831: stmp-fixinc] Error 1
make[3]: *** Waiting for unfinished jobs....
make[3]: Leaving directory '/tmp/guix-build-gcc-cross-sans-libc-x86_64-unknown-linux-gnu-5.5.0.drv-0/build/gcc'
make[2]: *** [Makefile:4322: all-stage1-gcc] Error 2
make[2]: Leaving directory '/tmp/guix-build-gcc-cross-sans-libc-x86_64-unknown-linux-gnu-5.5.0.drv-0/build'
make[1]: *** [Makefile:15652: stage1-bubble] Error 2
make[1]: Leaving directory '/tmp/guix-build-gcc-cross-sans-libc-x86_64-unknown-linux-gnu-5.5.0.drv-0/build'
make: *** [Makefile:855: all] Error 2
phase `build' failed after 1398.8 seconds
builder for `/gnu/store/g5h8ch1lk9rgljdgrkykr4mhxibwwkj5-gcc-cross-sans-libc-x86_64-unknown-linux-gnu-5.5.0.drv' failed with exit code 1
@ build-failed /gnu/store/g5h8ch1lk9rgljdgrkykr4mhxibwwkj5-gcc-cross-sans-libc-x86_64-unknown-linux-gnu-5.5.0.drv - 1 builder for `/gnu/store/g5h8ch1lk9rgljdgrkykr4mhxibwwkj5-gcc-cross-sans-libc-x86_64-unknown-linux-gnu-5.5.0.drv' failed with exit code 1
--8<---------------cut here---------------end--------------->8---

Earlier in this bug report, on 2017/11/27, I reported that a command
like the following failed ("ERROR: In procedure load-thunk-from-memory:
No such file or directory"), even though using --no-grafts had been
suggested as a work-around:

    /pre-inst-env guix build --no-grafts --target=mips64el-linux-gnu \
        bootstrap-tarballs

By using git bisect, I was able to determine that the commit which
introduced that specific issue was
2acfe022a740f79b593348cc6362cc4ee8f33bb4, which updated
guile-static-stripped to 2.2.

In sum, the original errors are no longer occurring, which is great.
Now we need to fix the remaining problems listed above.

-- 
Chris
[signature.asc (application/pgp-signature, inline)]

Information forwarded to bug-guix <at> gnu.org:
bug#24841; Package guix. (Tue, 27 Feb 2018 23:37:02 GMT) Full text and rfc822 format available.

Message #14 received at 24841 <at> debbugs.gnu.org (full text, mbox):

From: ludo <at> gnu.org (Ludovic Courtès)
To: Chris Marusich <cmmarusich <at> gmail.com>
Cc: bug#24841 <24841 <at> debbugs.gnu.org>
Subject: Re: bug#24841: Status: Cross-building bootstrap binaries fail in
 current master
Date: Wed, 28 Feb 2018 00:36:23 +0100
Hello,

Thanks for testing and providing a clear summary!

Chris Marusich <cmmarusich <at> gmail.com> skribis:

> * aarch64, arm, i686: For all of these targets, bootstrap-tarballs fails
>   because grep <at> 3.1 fails.  grep <at> 3.1 fails because of errors like the
>   following:
>
> make[2]: Entering directory '/tmp/guix-build-grep-3.1.drv-0/grep-3.1/src'
>   CC       dfasearch.o
>   CC       grep.o
>   CC       kwsearch.o
>   CC       kwset.o
>   CC       pcresearch.o
>   CC       searchutils.o
>   GEN      egrep
>   GEN      fgrep
>   CCLD     grep
> /gnu/store/p2b76bgsx5pkpc59fvxmkfz47502awg5-pcre-8.41/lib/libpcre.a(libpcre_la-pcre_jit_compile.o): In function `sljit_free_exec':
> (.text+0x64d): undefined reference to `pthread_mutex_lock'
> /gnu/store/p2b76bgsx5pkpc59fvxmkfz47502awg5-pcre-8.41/lib/libpcre.a(libpcre_la-pcre_jit_compile.o): In function `sljit_free_exec':
> (.text+0x6ac): undefined reference to `pthread_mutex_unlock'
> /gnu/store/p2b76bgsx5pkpc59fvxmkfz47502awg5-pcre-8.41/lib/libpcre.a(libpcre_la-pcre_jit_compile.o): In function `sljit_generate_code':
> (.text+0x73e4): undefined reference to `pthread_mutex_lock'
> /gnu/store/p2b76bgsx5pkpc59fvxmkfz47502awg5-pcre-8.41/lib/libpcre.a(libpcre_la-pcre_jit_compile.o): In function `sljit_generate_code':
> (.text+0x74b0): undefined reference to `pthread_mutex_unlock'
> /gnu/store/p2b76bgsx5pkpc59fvxmkfz47502awg5-pcre-8.41/lib/libpcre.a(libpcre_la-pcre_jit_compile.o): In function `sljit_generate_code':
> (.text+0x7847): undefined reference to `pthread_mutex_unlock'
> /gnu/store/p2b76bgsx5pkpc59fvxmkfz47502awg5-pcre-8.41/lib/libpcre.a(libpcre_la-pcre_jit_compile.o): In function `pcre_jit_free_unused_memory':
> (.text+0x2462a): undefined reference to `pthread_mutex_lock'
> /gnu/store/p2b76bgsx5pkpc59fvxmkfz47502awg5-pcre-8.41/lib/libpcre.a(libpcre_la-pcre_jit_compile.o): In function `pcre_jit_free_unused_memory':
> (.text+0x24692): undefined reference to `pthread_mutex_unlock'
> /gnu/store/spfsrm8cqxh7qs8j76ml6x989z2hy49y-gcc-cross-i686-unknown-linux-gnu-5.5.0/lib/gcc/i686-unknown-linux-gnu/5.5.0/libgcc_eh.a(unwind-dw2-fde-dip.o): In function `__gthread_mutex_lock':
> /tmp/guix-build-gcc-cross-i686-unknown-linux-gnu-5.5.0.drv-0/build/i686-unknown-linux-gnu/libgcc/./gthr-default.h:748: undefined reference to `pthread_mutex_lock'
> /gnu/store/spfsrm8cqxh7qs8j76ml6x989z2hy49y-gcc-cross-i686-unknown-linux-gnu-5.5.0/lib/gcc/i686-unknown-linux-gnu/5.5.0/libgcc_eh.a(unwind-dw2-fde-dip.o): In function `__gthread_mutex_unlock':
> /tmp/guix-build-gcc-cross-i686-unknown-linux-gnu-5.5.0.drv-0/build/i686-unknown-linux-gnu/libgcc/./gthr-default.h:778: undefined reference to `pthread_mutex_unlock'
> /gnu/store/spfsrm8cqxh7qs8j76ml6x989z2hy49y-gcc-cross-i686-unknown-linux-gnu-5.5.0/lib/gcc/i686-unknown-linux-gnu/5.5.0/libgcc_eh.a(unwind-dw2-fde-dip.o): In function `__gthread_mutex_lock':
> /tmp/guix-build-gcc-cross-i686-unknown-linux-gnu-5.5.0.drv-0/build/i686-unknown-linux-gnu/libgcc/./gthr-default.h:748: undefined reference to `pthread_mutex_lock'
> /gnu/store/spfsrm8cqxh7qs8j76ml6x989z2hy49y-gcc-cross-i686-unknown-linux-gnu-5.5.0/lib/gcc/i686-unknown-linux-gnu/5.5.0/libgcc_eh.a(unwind-dw2-fde-dip.o): In function `__gthread_mutex_unlock':
> /tmp/guix-build-gcc-cross-i686-unknown-linux-gnu-5.5.0.drv-0/build/i686-unknown-linux-gnu/libgcc/./gthr-default.h:778: undefined reference to `pthread_mutex_unlock'
> /gnu/store/spfsrm8cqxh7qs8j76ml6x989z2hy49y-gcc-cross-i686-unknown-linux-gnu-5.5.0/lib/gcc/i686-unknown-linux-gnu/5.5.0/libgcc_eh.a(unwind-dw2-fde-dip.o): In function `__gthread_mutex_lock':
> /tmp/guix-build-gcc-cross-i686-unknown-linux-gnu-5.5.0.drv-0/build/i686-unknown-linux-gnu/libgcc/./gthr-default.h:748: undefined reference to `pthread_mutex_lock'
> /gnu/store/spfsrm8cqxh7qs8j76ml6x989z2hy49y-gcc-cross-i686-unknown-linux-gnu-5.5.0/lib/gcc/i686-unknown-linux-gnu/5.5.0/libgcc_eh.a(unwind-dw2-fde-dip.o): In function `__gthread_mutex_unlock':
> /tmp/guix-build-gcc-cross-i686-unknown-linux-gnu-5.5.0.drv-0/build/i686-unknown-linux-gnu/libgcc/./gthr-default.h:778: undefined reference to `pthread_mutex_unlock'
> /gnu/store/spfsrm8cqxh7qs8j76ml6x989z2hy49y-gcc-cross-i686-unknown-linux-gnu-5.5.0/lib/gcc/i686-unknown-linux-gnu/5.5.0/libgcc_eh.a(unwind-dw2-fde-dip.o): In function `__gthread_mutex_lock':
> /tmp/guix-build-gcc-cross-i686-unknown-linux-gnu-5.5.0.drv-0/build/i686-unknown-linux-gnu/libgcc/./gthr-default.h:748: undefined reference to `pthread_mutex_lock'
> /gnu/store/spfsrm8cqxh7qs8j76ml6x989z2hy49y-gcc-cross-i686-unknown-linux-gnu-5.5.0/lib/gcc/i686-unknown-linux-gnu/5.5.0/libgcc_eh.a(unwind-dw2-fde-dip.o): In function `__gthread_mutex_unlock':
> /tmp/guix-build-gcc-cross-i686-unknown-linux-gnu-5.5.0.drv-0/build/i686-unknown-linux-gnu/libgcc/./gthr-default.h:778: undefined reference to `pthread_mutex_unlock'
> /gnu/store/spfsrm8cqxh7qs8j76ml6x989z2hy49y-gcc-cross-i686-unknown-linux-gnu-5.5.0/lib/gcc/i686-unknown-linux-gnu/5.5.0/libgcc_eh.a(unwind-dw2-fde-dip.o): In function `__gthread_mutex_lock':
> /tmp/guix-build-gcc-cross-i686-unknown-linux-gnu-5.5.0.drv-0/build/i686-unknown-linux-gnu/libgcc/./gthr-default.h:748: undefined reference to `pthread_mutex_lock'
> /gnu/store/spfsrm8cqxh7qs8j76ml6x989z2hy49y-gcc-cross-i686-unknown-linux-gnu-5.5.0/lib/gcc/i686-unknown-linux-gnu/5.5.0/libgcc_eh.a(unwind-dw2-fde-dip.o): In function `__gthread_mutex_unlock':
> /tmp/guix-build-gcc-cross-i686-unknown-linux-gnu-5.5.0.drv-0/build/i686-unknown-linux-gnu/libgcc/./gthr-default.h:778: undefined reference to `pthread_mutex_unlock'
> /tmp/guix-build-gcc-cross-i686-unknown-linux-gnu-5.5.0.drv-0/build/i686-unknown-linux-gnu/libgcc/./gthr-default.h:778: undefined reference to `pthread_mutex_unlock'
> collect2: error: ld returned 1 exit status
> make[2]: *** [Makefile:1317: grep] Error 1
> make[2]: Leaving directory '/tmp/guix-build-grep-3.1.drv-0/grep-3.1/src'
> make[1]: *** [Makefile:1301: all-recursive] Error 1
> make[1]: Leaving directory '/tmp/guix-build-grep-3.1.drv-0/grep-3.1'
> make: *** [Makefile:1242: all] Error 2
> phase `build' failed after 14.3 seconds
> builder for `/gnu/store/db1xy331abifx0r2jbi6q9zcbcmhf1b1-grep-3.1.drv' failed with exit code 1

Commit 29d37e999c495431eafde90027d2b97b16d0db4e fixes this one:

--8<---------------cut here---------------start------------->8---
$ ./pre-inst-env guix build --target=aarch64-unknown-linux-gnu bootstrap-tarballs 
/gnu/store/yai6wip6qcqgwlxwgvfqwab8gi9yks1s-bootstrap-tarballs-0
$ git describe
v0.14.0-2653-g29d37e999
--8<---------------cut here---------------end--------------->8---

Ludo’.




Information forwarded to bug-guix <at> gnu.org:
bug#24841; Package guix. (Fri, 02 Jul 2021 10:21:01 GMT) Full text and rfc822 format available.

Message #17 received at 24841 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: Chris Marusich <cmmarusich <at> gmail.com>
Cc: othacehe <at> gnu.org, ludo <at> gnu.org, bug#24841 <24841 <at> debbugs.gnu.org>
Subject: Re: bug#24841: Cross-building bootstrap binaries fail in current
 master
Date: Fri, 02 Jul 2021 10:47:56 +0200
Hi,

What is the status of this bug#24841 report [1]?

1: <http://issues.guix.gnu.org/issue/24841>


On jeu., 22 févr. 2018 at 10:47, Chris Marusich <cmmarusich <at> gmail.com> wrote:
> Hi,
>
> The core-updates branch has been merged into master.  As of
> 5ce3f93bc52280c7c2b1b96097e8cd4a62b53bb0 (committed on 2018/02/18),
> which is after the merge, the following builds PASS or FAIL when run on
> an x86_64-linux GuixSD system:
>
> FAIL:  aarch64-unknown-linux-gnu    bootstrap-tarballs  grafts
> FAIL:  aarch64-unknown-linux-gnu    bootstrap-tarballs  no-grafts
> PASS:  aarch64-unknown-linux-gnu    guile-static        grafts
> PASS:  aarch64-unknown-linux-gnu    guile-static        no-grafts
> FAIL:  arm-unknown-linux-gnueabihf  bootstrap-tarballs  grafts
> FAIL:  arm-unknown-linux-gnueabihf  bootstrap-tarballs  no-grafts
> PASS:  arm-unknown-linux-gnueabihf  guile-static        grafts
> PASS:  arm-unknown-linux-gnueabihf  guile-static        no-grafts
> FAIL:  i686-unknown-linux-gnu       bootstrap-tarballs  grafts
> FAIL:  i686-unknown-linux-gnu       bootstrap-tarballs  no-grafts
> PASS:  i686-unknown-linux-gnu       guile-static        grafts
> PASS:  i686-unknown-linux-gnu       guile-static        no-grafts
> FAIL:  mips64el-unknown-linux-gnu   bootstrap-tarballs  grafts
> FAIL:  mips64el-unknown-linux-gnu   bootstrap-tarballs  no-grafts
> PASS:  mips64el-unknown-linux-gnu   guile-static        grafts
> PASS:  mips64el-unknown-linux-gnu   guile-static        no-grafts
> FAIL:  x86_64-unknown-linux-gnu     bootstrap-tarballs  grafts
> FAIL:  x86_64-unknown-linux-gnu     bootstrap-tarballs  no-grafts
> FAIL:  x86_64-unknown-linux-gnu     guile-static        grafts
> FAIL:  x86_64-unknown-linux-gnu     guile-static        no-grafts
>
> Here, PASS means it builds successfully.  FAIL means it did not.  The
> second column is the target, the third column is the package, and the
> fourth column is whether or not grafts were enabled.  Note that
> "guile-static" is short-hand for "-e '(@@ (gnu packages make-bootstrap)
> %guile-static)'".  So, for example, the first row means that the
> following command failed when I tried it:
>
>     ./pre-inst-env guix build --target=aarch64-unknown-linux-gnu \
>         bootstrap-tarballs

Using Guix 3694c0d on x86_64 and the line,

   time guix build --target=$arch bootstrap-tarballs -q --no-grafts
   time guix build --target=$arch bootstrap-tarballs -q

I get this:

PASS:  aarch64-unknown-linux-gnu    bootstrap-tarballs  grafts
PASS:  aarch64-unknown-linux-gnu    bootstrap-tarballs  no-grafts
PASS:  aarch64-unknown-linux-gnu    guile-static        grafts
PASS:  aarch64-unknown-linux-gnu    guile-static        no-grafts
PASS:  arm-unknown-linux-gnueabihf  bootstrap-tarballs  grafts
PASS:  arm-unknown-linux-gnueabihf  bootstrap-tarballs  no-grafts
PASS:  arm-unknown-linux-gnueabihf  guile-static        grafts
PASS:  arm-unknown-linux-gnueabihf  guile-static        no-grafts
PASS:  i686-unknown-linux-gnu       bootstrap-tarballs  grafts
PASS:  i686-unknown-linux-gnu       bootstrap-tarballs  no-grafts
PASS:  i686-unknown-linux-gnu       guile-static        grafts
PASS:  i686-unknown-linux-gnu       guile-static        no-grafts
PASS:  mips64el-unknown-linux-gnu   bootstrap-tarballs  grafts
PASS:  mips64el-unknown-linux-gnu   bootstrap-tarballs  no-grafts
PASS:  mips64el-unknown-linux-gnu   guile-static        grafts
PASS:  mips64el-unknown-linux-gnu   guile-static        no-grafts

FAIL:  x86_64-unknown-linux-gnu     bootstrap-tarballs  grafts
FAIL:  x86_64-unknown-linux-gnu     bootstrap-tarballs  no-grafts
FAIL:  x86_64-unknown-linux-gnu     guile-static        grafts
FAIL:  x86_64-unknown-linux-gnu     guile-static        no-grafts


In other words, it is not a cross-compilation issue. :-)

WDYT to close this old report and open another one addressing the
current issues; if they are.

All the best,
simon




Information forwarded to bug-guix <at> gnu.org:
bug#24841; Package guix. (Tue, 06 Jul 2021 03:37:02 GMT) Full text and rfc822 format available.

Message #20 received at 24841 <at> debbugs.gnu.org (full text, mbox):

From: Chris Marusich <cmmarusich <at> gmail.com>
To: zimoun <zimon.toutoune <at> gmail.com>
Cc: othacehe <at> gnu.org, ludo <at> gnu.org, bug#24841 <24841 <at> debbugs.gnu.org>
Subject: Re: bug#24841: Cross-building bootstrap binaries fail in current
 master
Date: Mon, 05 Jul 2021 20:36:38 -0700
[Message part 1 (text/plain, inline)]
zimoun <zimon.toutoune <at> gmail.com> writes:

> What is the status of this bug#24841 report [1]?
>
> 1: <http://issues.guix.gnu.org/issue/24841>

I agree we can close this old bug report.  As you mentioned, it is now
possible to build bootstrap binaries for various architectures.

If someone needs to build bootstrap binaries for a specific
architecture, and they are unable to do so, then they should open a new
bug report for that problem specifically.  Currently, I have no need to
do this, since I am not bootstrapping any new architectures at the
moment, or updating any bootstrap binaries.

If nobody else comments, I'll close this bug report in a week or two.

-- 
Chris
[signature.asc (application/pgp-signature, inline)]

Information forwarded to bug-guix <at> gnu.org:
bug#24841; Package guix. (Tue, 06 Jul 2021 09:02:01 GMT) Full text and rfc822 format available.

Message #23 received at 24841 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: Chris Marusich <cmmarusich <at> gmail.com>
Cc: othacehe <at> gnu.org, ludo <at> gnu.org, bug#24841 <24841 <at> debbugs.gnu.org>
Subject: Re: bug#24841: Cross-building bootstrap binaries fail in current
 master
Date: Tue, 06 Jul 2021 10:31:28 +0200
Hi Chris,

On Mon, 05 Jul 2021 at 20:36, Chris Marusich <cmmarusich <at> gmail.com> wrote:

> If nobody else comments, I'll close this bug report in a week or two.

Thanks. :-)

Cheers,
simon




Reply sent to Chris Marusich <cmmarusich <at> gmail.com>:
You have taken responsibility. (Fri, 30 Jul 2021 06:44:01 GMT) Full text and rfc822 format available.

Notification sent to ludo <at> gnu.org (Ludovic Courtès):
bug acknowledged by developer. (Fri, 30 Jul 2021 06:44:01 GMT) Full text and rfc822 format available.

Message #28 received at 24841-close <at> debbugs.gnu.org (full text, mbox):

From: Chris Marusich <cmmarusich <at> gmail.com>
To: 24841-close <at> debbugs.gnu.org
Subject: close 24841
Date: Thu, 29 Jul 2021 23:43:01 -0700
[Message part 1 (text/plain, inline)]
Hi,

As there has been no more feedback recently, I will now close this bug
report.

-- 
Chris
[signature.asc (application/pgp-signature, inline)]

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Fri, 27 Aug 2021 11:24:04 GMT) Full text and rfc822 format available.

This bug report was last modified 2 years and 242 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.