Subject: Re: bug#50493: Update go-build-system to use Go 1.17.

From: Efraim Flashner <[email-masked]>
Date: Wed, 15 Dec 2021 12:40:07 +0200

On Tue, Dec 14, 2021 at 03:11:04PM -0500, Leo Famulari wrote:
> Alright, it's time to land these patches. I tested with a handful of
> packages on x86_64 and it seems fine. I can test every package before
> pushing.
> 
> However, Go 1.17.4 doesn't build for us on aarch64. I tried building the
> derivation for this scheduled CI job:
> 
> https://ci.guix.gnu.org/build/1952348/details
> /gnu/store/bldlnwxjwbi1iidm6cdw20kkpgy5gk09-go-1.17.4.drv

The link shows problems with the armhf portion of the bootstrap.

> And it fails the test suite due to missing libgcc (I think), or maybe
> something related to 'hello.exe', which seems weird:
> 
> ------
> $ guix build /gnu/store/bldlnwxjwbi1iidm6cdw20kkpgy5gk09-go-1.17.4.drv
> [...]
> --- FAIL: TestTrampolineCgo (78.58s)
>     link_test.go:739: executable failed to run: exit status 127
>         /tmp/guix-build-go-1.17.4.drv-0/TestTrampolineCgo602252092/001/hello.exe: error while loading shared libraries: libgcc_s.so.1: cannot open shared object file: No such file or directory
>     link_test.go:742: unexpected output:
>         /tmp/guix-build-go-1.17.4.drv-0/TestTrampolineCgo602252092/001/hello.exe: error while loading shared libraries: libgcc_s.so.1: cannot open shared object file: No such file or directory
> FAIL
> FAIL    cmd/link        425.553s
> ok      cmd/link/internal/benchmark     0.449s
> ok      cmd/link/internal/ld    84.727s
> ok      cmd/link/internal/loader        0.366s
> ok      cmd/nm  73.342s
> ok      cmd/objdump     96.072s
> ok      cmd/pack        77.197s
> ok      cmd/pprof       155.165s
> ok      cmd/trace       2.437s
> ok      cmd/vet 318.126s
> FAIL
> go tool dist: Failed: exit status 1
> command "sh" "run.bash" "--no-rebuild" failed with status 1
> builder for `/gnu/store/bldlnwxjwbi1iidm6cdw20kkpgy5gk09-go-1.17.4.drv' failed with exit code 1
> ------
> 
> I notice that we remove libgcc from the dependencies of go-1.17:
> 
> https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/golang.scm?id=b484301f529e246df80380a641822f09a8775755#n799
> 
> Anyways, any ideas?

I'll try poking it a bit with my aarch64 board. We can also switch the
aarch64 go builds to bootstrap from gccgo, that might make a difference
too.

-- 
Efraim Flashner   <[email-masked]>   רנשלפ םירפא
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted