From: Fiona Klute via buildroot <buildroot@buildroot.org>
To: yann.morin@orange.com
Cc: buildroot@buildroot.org, 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: Tue, 4 Feb 2025 15:37:31 +0100 [thread overview]
Message-ID: <6730ffaf-e2ec-4db2-ae35-62aff47d215f@gmx.de> (raw)
In-Reply-To: <Z6IEYRiU1IklParS@yd-6wlzhs3>
Yann, everyone,
I've just sent a new patch that sets -fuse-ld=bfd for package/containerd:
https://patchwork.ozlabs.org/project/buildroot/patch/20250204143227.1233163-1-fiona.klute@gmx.de/
It works for me (host-go-src, musl), I'd appreciate tests with other
toolchains.
Best regards,
Fiona
Am 04.02.25 um 13:13 schrieb yann.morin@orange.com:
> Fiona, All,
>
> On 2025-02-04 12:37 +0100, Fiona Klute spake thusly:
>> According to the discussion in the Go issue, there was another bug that
>> got fixed with 2.41.
>> https://github.com/golang/go/issues/22040#issuecomment-1430110400
>
> Yes, that's exactly why I needed to pass -fuse-ld=bfd for filebeat but
> not for arm.
>
>> Am 04.02.25 um 12:13 schrieb yann.morin@orange.com:
> [--SNIP--]
>>> So, packages that need to specify "-fuse-ld=bfd" would do so
>>> unconditionaly, just maybe for the AArch64 case, which is the only one I
>>> know can cause the build failure (not all packages have the issue, as
>>> can be explamplified by the fact that we have no such failures in the
>>> autobuilders).
>> I like that approach, but as mentioned above the toolchains will have to
>> be a bit more recent.
>
> 2.36 worked for me, at least. But unless the toolchains have to be less
> than a year old, I think it is OK to require that.
>
> But now, as you mentioned [0], if gold gets dropped, then I'd expect
> newer binutils to no longer install ld.bfd either (because there'd be
> only only linker left). So we'd be back to the case of old toolchains,
> where gold did not yet exist, and thus ld.bfd did not exist either.
>
> So, if we need to be future proof, then we need to design a solution
> that works in all cases;
> - old toolchains where gold did not exist, and where ld.bfd did not
> exist, o it's just 'ld;';
> - toolchains where binutils was /configure-d with --disable-gold,
> so it's just 'ld';
> - toolchains where gold exists, and has both ld.bfd and ld.gold, and
> where we want to use 'ld.bfd';
> - future toolchains where gold no longer exists, so it's again just
> 'ld'.
>
> [0] https://github.com/golang/go/issues/22040#issuecomment-2630848777
>
>> What's odd is that my test build failed. As you can see, with your patch
>> setting CONTAINERD_EXTLDFLAGS += -fuse-ld=bfd works to use ld.bfd, but
>> confusingly there's an error that didn't appear when patching Go:
> [--SNIP--]
>> /home/fiona/development/buildroot/output/revpi/host/lib/gcc/aarch64-buildroot-linux-musl/13.3.0/../../../../aarch64-buildroot-linux-musl/bin/ld.bfd:
>> read-only segment has dynamic relocations
>> collect2: Fehler: ld gab 1 als Ende-Status zurück
>>
>> Any ideas? Is the different order of arguments messing things up?
>
> Ordering of args should not matter: the latter should win.
>
> Maybe you can requier verbose output:
>
> FOO_EXTLDFLAGS = -fuse-ld=bfd -Wl,--verbose -v
>
> Otherwise, no idea, as I am not a go guy... I just had to fiddle with
> filebeat a few years back, managed to get it fall in place with the
> referenced change, but other than that, I am just a monkey typing on a
> keyboard in this go land. ;-)
>
> Regards,
> Yann E. MORIN.
>
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
next prev parent reply other threads:[~2025-02-04 14:37 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
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 [this message]
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=6730ffaf-e2ec-4db2-ae35-62aff47d215f@gmx.de \
--to=buildroot@buildroot.org \
--cc=christian@aperture.us \
--cc=fiona.klute@gmx.de \
--cc=thomas.perale@mind.be \
--cc=yann.morin@orange.com \
/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.