Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
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

  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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox