From 6226afedda7fe1fa2b8909e7a4adce5aeb2a6ba3 Mon Sep 17 00:00:00 2001 From: Ben Wolsieffer Date: Fri, 1 May 2026 22:36:23 -0400 Subject: [PATCH] telegraf: pass --long-plt to linker on AArch32 Without this flag, linking fails with the following message: armv7l-unknown-linux-gnueabihf-ld.bfd: BFD (GNU Binutils) 2.46 assertion fail /build/binutils-with-gold-2.46/bfd/elf32-arm.c:9783 --- pkgs/by-name/te/telegraf/package.nix | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/pkgs/by-name/te/telegraf/package.nix b/pkgs/by-name/te/telegraf/package.nix index 4f3ebb1c58cc..79011e7a8d80 100644 --- a/pkgs/by-name/te/telegraf/package.nix +++ b/pkgs/by-name/te/telegraf/package.nix @@ -29,6 +29,13 @@ buildGoModule (finalAttrs: { "-w" "-X=github.com/influxdata/telegraf/internal.Commit=${finalAttrs.src.rev}" "-X=github.com/influxdata/telegraf/internal.Version=${finalAttrs.version}" + ] + # Binary is too large for the default GOT PLT displacments on 32-bit ARM; + # need to use larger encoding otherwise linking fails with: + # BFD (GNU Binutils) 2.46 assertion fail /build/binutils-with-gold-2.46/bfd/elf32-arm.c:9783 + ++ lib.optionals stdenv.hostPlatform.isAarch32 [ + "-extldflags" + "-Wl,--long-plt" ]; passthru.tests = {