Subject: bug#24841: closed (close 24841)

From: [email-masked] (GNU bug Tracking System)
Date: Fri, 30 Jul 2021 06:44:01 +0000

Your bug report

#24841: Cross-building bootstrap binaries fail in current master

which was filed against the guix package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
24841: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=24841
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: close 24841
From: Chris Marusich <[email-masked]>
To: [email-masked]
Date: Thu, 29 Jul 2021 23:43:01 -0700
List-Id: <debbugs-submit.debbugs.gnu.org>

Hi,

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

-- 
Chris

Subject: Re: Cross-building bootstrap binaries fail in current master
From: [email-masked] (Ludovic Courtès)
To: [email-masked] (Carlos Sánchez de La Lama)
Cc: [email-masked], [email-masked]
Date: Mon, 31 Oct 2016 22:59:02 +0100
List-Id: <debbugs-submit.debbugs.gnu.org>

Hi Carlos,

[email-masked] (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’.