Re: Undefined symbol "setgroups@FBSD_1.8"

From: Mark Millard <marklmi_at_yahoo.com>
Date: Wed, 15 Oct 2025 01:24:03 UTC
On Oct 14, 2025, at 17:28, void <void@f-m.fm> wrote:

> Trying to build pkg within a newly created 13.5-RELEASE-p5 1305000 c106ed332 amd64 git+https 2025-10-14 21:41:29
> poudriere jail on a stable/15 host stable/15-n280668-998dd4a11a2b GENERIC amd64 1500500 1500500
> errors at the configuring pkg stage with
> 
> [00:00:01] ===>  Configuring for pkg-2.3.1
> [00:00:01] ==> Starting sccache
> [00:00:01] ld-elf.so.1: /overlays/sccache/bin/sccache: Undefined symbol "setgroups@FBSD_1.8"
> [00:00:01] ld-elf.so.1: /overlays/sccache/bin/sccache: Undefined symbol "setgroups@FBSD_1.8"
> [00:00:01] *** Error code 1
> 
> If I rebuild and reinstall devel/sccache and ports-mgmt/sccache-overlay
> the traditional way it makes no difference.
> 
> If I remove -O sccache from the command line the build runs normally.
> 
> I'm not altogether sure if this is a pkg problem, or ports infra, or
> if it's sccache or even some other problem so if this is the wrong place then please advise.
> 
> I dimly recall on the lists something like FBSD_1.8 but can't remember
> the context.

I'm not sure if the following might help or not.

In my (official pkgbase distribution) context:

# uname -apKU
FreeBSD 7950X3D-ZFS 16.0-CURRENT FreeBSD 16.0-CURRENT main-n281133-2241cd10d6e0 GENERIC-NODEBUG amd64 amd64 1600001 1600001

# grep setgroups `grep -rl FBSD_1.8 /usr/src/`
/usr/src/lib/libsys/Symbol.sys.map:	setgroups;

But libsys was new as of 15. The FBSD_1.8 status
for setgroups was as of:

author Kyle Evans <kevans@FreeBSD.org> 2025-08-15 04:06:09 +0000
committer Kyle Evans <kevans@FreeBSD.org> 2025-08-15 04:06:09 +0000

commit 9da2fe96ff2ea227e4d5f03ef92b55aabeabb7fc (patch)
tree c2b8913ea97e90b3473cd2e75af5d6e8e1c93fd8 /lib/libsys/Symbol.sys.map
parent c75550e499971549b31d514ab139b80297c14792 (diff)

kern: fix setgroups(2) and getgroups(2) to match other platforms

. . .
@@ -380,11 +378,13 @@ FBSD_1.7 {
 FBSD_1.8 {
 	exterrctl;
 	fchroot;
+	getgroups;
 	getrlimitusage;
 	inotify_add_watch_at;
 	inotify_rm_watch;
 	kcmp;
 	setcred;
+	setgroups;
 };


So, the code referencing Undefined symbol "setgroups@FBSD_1.8"
is not from 13.5-RELEASE-p5 but from 15+ yet was executing in
a context where the above had not been established in libsys
-- if I understand right. There might not even be a libsys
in that context.

So: in some way an inappropriate mix of vintages seems to
be in use.

Based on the messages, it appears that /overlays/sccache/bin/sccache
has or leads to loading something that the: "setgroups@FBSD_1.8"
reference. It possibly needs to be built for 13.5-RELEASE-p5 . That
would have no "setgroups@FBSD_1.8" reference to complain about.

===
Mark Millard
marklmi at yahoo.com