* [Buildroot] [PATCH 0/2] package/iproute2: fix musl/uclibc build failure with libtirpc
@ 2026-09-22 13:26 Yegor Yefremov via buildroot
2026-09-22 13:26 ` [Buildroot] [PATCH 1/2] package/iproute2: add optional dependency on libtirpc Yegor Yefremov via buildroot
` (2 more replies)
0 siblings, 3 replies; 4+ messages in thread
From: Yegor Yefremov via buildroot @ 2026-09-22 13:26 UTC (permalink / raw)
To: buildroot; +Cc: Petr Vorel
From: Yegor Yefremov <yegorslists@googlemail.com>
iproute2's configure script enables HAVE_RPC as soon as pkg-config finds
libtirpc, without link-testing anything. misc/ss.c then calls
getrpcbynumber(), which since the libtirpc 1.3.7 bump (commit
3f3d6e43de9b4aac7df8545fd811171256f878d3) is only exported when libtirpc
is configured with --enable-rpcdb. On non-glibc toolchains there is no
libc fallback, so linking ss fails:
ld: ss.o: in function `init_service_resolver':
ss.c:(.text+0x2558): undefined reference to `getrpcbynumber'
This is the same problem lsof hit in commit e4d075975f, fixed the same
way here.
While looking at this, it turned out libtirpc was never listed in
IPROUTE2_DEPENDENCIES at all, even though configure probes for it, so
patch 1 adds that missing optional dependency first.
Tested with an aarch64 musl toolchain and BR2_PACKAGE_LIBTIRPC=y: before
the series ss fails to link, after it builds and ss correctly resolves
getrpcbynumber@TIRPC_0.3.0 from libtirpc.
Fixes:
https://autobuild.buildroot.org/results/390b7ed00da20c2349fe069ade4a65404834a484/
Yegor Yefremov (2):
package/iproute2: add optional dependency on libtirpc
package/iproute2: fix build failure due to missing
BR2_PACKAGE_LIBTIRPC_RPCDB
package/iproute2/Config.in | 1 +
package/iproute2/iproute2.mk | 4 ++++
2 files changed, 5 insertions(+)
--
2.34.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 4+ messages in thread
* [Buildroot] [PATCH 1/2] package/iproute2: add optional dependency on libtirpc
2026-09-22 13:26 [Buildroot] [PATCH 0/2] package/iproute2: fix musl/uclibc build failure with libtirpc Yegor Yefremov via buildroot
@ 2026-09-22 13:26 ` Yegor Yefremov via buildroot
2026-09-22 13:26 ` [Buildroot] [PATCH 2/2] package/iproute2: fix build failure due to missing BR2_PACKAGE_LIBTIRPC_RPCDB Yegor Yefremov via buildroot
2026-10-10 17:24 ` [Buildroot] [PATCH 0/2] package/iproute2: fix musl/uclibc build failure with libtirpc Thomas Petazzoni via buildroot
2 siblings, 0 replies; 4+ messages in thread
From: Yegor Yefremov via buildroot @ 2026-09-22 13:26 UTC (permalink / raw)
To: buildroot; +Cc: Petr Vorel
From: Yegor Yefremov <yegorslists@googlemail.com>
iproute2's configure script probes for libtirpc through pkg-config and,
when found, enables HAVE_RPC and links ss against it. libtirpc was never
listed in IPROUTE2_DEPENDENCIES though, so whether the feature ends up
enabled depended on whether libtirpc happened to be built before
iproute2.
Add the missing optional dependency to make the build reproducible.
Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
Assisted-by: Claude:claude-opus-5
---
package/iproute2/iproute2.mk | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/package/iproute2/iproute2.mk b/package/iproute2/iproute2.mk
index fe7a6fc304..344a6fa8e4 100644
--- a/package/iproute2/iproute2.mk
+++ b/package/iproute2/iproute2.mk
@@ -25,6 +25,10 @@ ifeq ($(BR2_PACKAGE_LIBSELINUX),y)
IPROUTE2_DEPENDENCIES += libselinux
endif
+ifeq ($(BR2_PACKAGE_LIBTIRPC),y)
+IPROUTE2_DEPENDENCIES += libtirpc
+endif
+
ifeq ($(BR2_PACKAGE_IPTABLES)x$(BR2_STATIC_LIBS),yx)
IPROUTE2_DEPENDENCIES += iptables
else
--
2.34.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [Buildroot] [PATCH 2/2] package/iproute2: fix build failure due to missing BR2_PACKAGE_LIBTIRPC_RPCDB
2026-09-22 13:26 [Buildroot] [PATCH 0/2] package/iproute2: fix musl/uclibc build failure with libtirpc Yegor Yefremov via buildroot
2026-09-22 13:26 ` [Buildroot] [PATCH 1/2] package/iproute2: add optional dependency on libtirpc Yegor Yefremov via buildroot
@ 2026-09-22 13:26 ` Yegor Yefremov via buildroot
2026-10-10 17:24 ` [Buildroot] [PATCH 0/2] package/iproute2: fix musl/uclibc build failure with libtirpc Thomas Petazzoni via buildroot
2 siblings, 0 replies; 4+ messages in thread
From: Yegor Yefremov via buildroot @ 2026-09-22 13:26 UTC (permalink / raw)
To: buildroot; +Cc: Petr Vorel
From: Yegor Yefremov <yegorslists@googlemail.com>
iproute2's configure script enables HAVE_RPC as soon as libtirpc is
found, and misc/ss.c then calls getrpcbynumber() from its RPC service
resolver. Since the bump of libtirpc to version 1.3.7 in Buildroot
commit 3f3d6e43de9b4aac7df8545fd811171256f878d3, which includes upstream
commit:
https://git.linux-nfs.org/?p=steved/libtirpc.git;a=commit;h=7cea8ad66aecc21e6caae330b5d31075af399193
that symbol is only exported when libtirpc is configured with
--enable-rpcdb. On non-glibc toolchains there is no libc fallback
either, so linking ss fails:
ld: ss.o: in function `init_service_resolver':
ss.c:(.text+0x2558): undefined reference to `getrpcbynumber'
Select BR2_PACKAGE_LIBTIRPC_RPCDB when libtirpc is enabled, like lsof
and other users of these functions already do.
Fixes:
https://autobuild.buildroot.org/results/390b7ed00da20c2349fe069ade4a65404834a484/
Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
Assisted-by: Claude:claude-opus-5
---
package/iproute2/Config.in | 1 +
1 file changed, 1 insertion(+)
diff --git a/package/iproute2/Config.in b/package/iproute2/Config.in
index ab9e515eca..106a0aaf2c 100644
--- a/package/iproute2/Config.in
+++ b/package/iproute2/Config.in
@@ -2,6 +2,7 @@ config BR2_PACKAGE_IPROUTE2
bool "iproute2"
depends on BR2_USE_MMU # fork()
depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_4 # __kernel_{u,}long_t
+ select BR2_PACKAGE_LIBTIRPC_RPCDB if BR2_PACKAGE_LIBTIRPC
help
Kernel routing and traffic control utilities. Provides things
like ip and tc.
--
2.34.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [Buildroot] [PATCH 0/2] package/iproute2: fix musl/uclibc build failure with libtirpc
2026-09-22 13:26 [Buildroot] [PATCH 0/2] package/iproute2: fix musl/uclibc build failure with libtirpc Yegor Yefremov via buildroot
2026-09-22 13:26 ` [Buildroot] [PATCH 1/2] package/iproute2: add optional dependency on libtirpc Yegor Yefremov via buildroot
2026-09-22 13:26 ` [Buildroot] [PATCH 2/2] package/iproute2: fix build failure due to missing BR2_PACKAGE_LIBTIRPC_RPCDB Yegor Yefremov via buildroot
@ 2026-10-10 17:24 ` Thomas Petazzoni via buildroot
2 siblings, 0 replies; 4+ messages in thread
From: Thomas Petazzoni via buildroot @ 2026-10-10 17:24 UTC (permalink / raw)
To: Yegor Yefremov; +Cc: buildroot, Petr Vorel
On Tue, Sep 22, 2026 at 03:26:46PM +0200, Yegor Yefremov via buildroot wrote:
> Yegor Yefremov (2):
> package/iproute2: add optional dependency on libtirpc
> package/iproute2: fix build failure due to missing
> BR2_PACKAGE_LIBTIRPC_RPCDB
Series applied, thanks!
Thomas
--
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2026-10-10 17:24 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-09-22 13:26 [Buildroot] [PATCH 0/2] package/iproute2: fix musl/uclibc build failure with libtirpc Yegor Yefremov via buildroot
2026-09-22 13:26 ` [Buildroot] [PATCH 1/2] package/iproute2: add optional dependency on libtirpc Yegor Yefremov via buildroot
2026-09-22 13:26 ` [Buildroot] [PATCH 2/2] package/iproute2: fix build failure due to missing BR2_PACKAGE_LIBTIRPC_RPCDB Yegor Yefremov via buildroot
2026-10-10 17:24 ` [Buildroot] [PATCH 0/2] package/iproute2: fix musl/uclibc build failure with libtirpc Thomas Petazzoni via buildroot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox