From: Fiona Klute via buildroot <buildroot@buildroot.org>
To: Arnout Vandecappelle <arnout@mind.be>, buildroot@buildroot.org
Cc: Thomas Perale <thomas.perale@mind.be>,
Christian Stewart <christian@aperture.us>
Subject: Re: [Buildroot] [PATCH 1/1] package/go/go-src: stop forcing binutils-gold dependency on aarch64
Date: Mon, 3 Feb 2025 16:17:52 +0100 [thread overview]
Message-ID: <bf504c35-cbe4-40dd-b56d-bfa3b62e552c@gmx.de> (raw)
In-Reply-To: <087a8c52-81f6-4031-b0ce-712fc8857034@mind.be>
Hi Arnout!
Am 03.02.25 um 15:13 schrieb Arnout Vandecappelle:
>
>
> On 03/02/2025 14:04, Fiona Klute wrote:
>> Hi Arnout!
>>
>> Am 03.02.25 um 13:48 schrieb Arnout Vandecappelle:
>>> Hi Fiona,
>>>
>>> On 03/02/2025 13:01, Fiona Klute wrote:
>>>> From: "Fiona Klute (WIWA)" <fiona.klute@gmx.de>
>>>>
>>>> Go forces the GOLD linker when dynamically linking Go code, because
>>>> old versions of BFD caused errors. The issue has been fixed in
>>>> Binutils since at least 2.41 according to the upstream description of
>>>> the patch added with this commit [1], and now forcing GOLD causes
>>>> linking failure if ld.gold is not available. The associated Golang
>>>> issue [2] is still open.
>>>>
>>>> Import the patch to stop forcing GOLD.
>>>
>>> This fixes the issue for go-src, but not for go-bin unfortunately...
>>> And go-bin is the default...
>>
>> I'm afraid I can't patch the Go binaries, at least not with reasonable
>> effort.
>
> Oh come on, how hard can it be :-)
>
>
>>> On the other hand, we don't have any autobuilder failures yet, so
>>> maybe it's a corner case problem and we can live with it until go-bin
>>> gets bumped to 1.23.6 (assuming upstream applies the fix to their stable
>>> branch of course).
>>
>> As I understand the code, the forced option is only applied when
>> building a dynamically linked library, which is probably not very common
>> with Go. I haven't looked more deeply into it, but my current assumption
>> is that containerd started doing that with the 2.0 release, because
>> there haven't been any recent changes to package/binutils (and
>> definitely none disabling Gold). Otherwise the error should've shown up
>> earlier.
>
> Great! In that case, we can either patch containerd to not do that, or
> (temporarily) make containerd depend on host-go-src (with a big comment
> explaining why).
>
> However, I think it's best to apply this patch and leave containerd +
> go-bin as broken for a while. If there will be a Go 1.23.6 that fixes
> the issue, then just bumping Go (both bin and src) is a much easier path
> forward.
I mostly agree, though there's one catch: I have no idea if the patch
will be merged upstream soon. The patch is almost 3 years old by now,
and the issue discussion doesn't indicate a plan.
If we need a workaround enabling Gold in the Binutils build for the
cross toolchain might also be an option, but has two disadvantages:
a) It's not going to help people using a pre-built toolchain.
b) The Binutils developers seem to be planning to deprecate Gold:
https://sourceware.org/pipermail/binutils/2024-October/137319.html (The
Debian package changelog is a lot more direct about that.)
I hope that point b) hurries things along on the Go side, so I mentioned
it in the issue [1].
Best regards,
Fiona
[1] https://github.com/golang/go/issues/22040#issuecomment-2630848777
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
next prev parent reply other threads:[~2025-02-03 15:18 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-02-03 12:01 [Buildroot] [PATCH 1/1] package/go/go-src: stop forcing binutils-gold dependency on aarch64 Fiona Klute via buildroot
2025-02-03 12:48 ` Arnout Vandecappelle via buildroot
2025-02-03 13:04 ` Fiona Klute via buildroot
2025-02-03 14:13 ` Arnout Vandecappelle via buildroot
2025-02-03 15:17 ` Fiona Klute via buildroot [this message]
2025-02-03 20:08 ` Christian Stewart via buildroot
2025-02-04 3:41 ` Christian Stewart via buildroot
2025-02-04 6:27 ` yann.morin
2025-02-04 14:50 ` Fiona Klute via buildroot
2025-02-04 6:26 ` yann.morin
2025-02-04 10:52 ` Fiona Klute via buildroot
2025-02-04 11:13 ` yann.morin
2025-02-04 11:37 ` Fiona Klute via buildroot
2025-02-04 12:13 ` yann.morin
2025-02-04 14:37 ` Fiona Klute via buildroot
2025-02-04 11:27 ` Arnout Vandecappelle via buildroot
2025-02-04 14:46 ` Fiona Klute via buildroot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=bf504c35-cbe4-40dd-b56d-bfa3b62e552c@gmx.de \
--to=buildroot@buildroot.org \
--cc=arnout@mind.be \
--cc=christian@aperture.us \
--cc=fiona.klute@gmx.de \
--cc=thomas.perale@mind.be \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.