/lib/libc.so.7 vs. __libc_start1@FBSD_1.7 in main [so: 14] recently ?

From: Mark Millard <marklmi_at_yahoo.com>
Date: Mon, 24 Apr 2023 03:08:33 UTC
I will not get into why, but I executed a git built for 1400082
in a 1400081 world context and got what was to me a surprise,
given that /lib/libc.so.7 is part of 13.2-RELEASE :

ld-elf.so.1: /usr/local/bin/git: Undefined symbol "__libc_start1@FBSD_1.7"

Does this mean that a /lib/libc.so.8 is pending? Or do the
criteria for the likes of /lib/libc.so.7 allow for new
symbols over time without a name change, even after a
release contains a /lib/libc.so.7 ?

Just curious about the criteria. Executing newer on older is
not my normal type of activity: usually avoided.


FYI: Checking 13.2-RELEASE shows it is using /lib/libc.so.7 :

# uname -apKU
FreeBSD generic 13.2-RELEASE FreeBSD 13.2-RELEASE releng/13.2-n254617-525ecfdad597 GENERIC arm64 aarch64 1302001 1302001

# ldd -a `which git`
/usr/local/bin/git:
        libpcre2-8.so.0 => /usr/local/lib/libpcre2-8.so.0 (0x6a226ba02000)
        libz.so.6 => /lib/libz.so.6 (0x6a226c8fb000)
        libintl.so.8 => /usr/local/lib/libintl.so.8 (0x6a226cc81000)
        libthr.so.3 => /lib/libthr.so.3 (0x6a226d429000)
        libc.so.7 => /lib/libc.so.7 (0x6a226dbfa000)
/usr/local/lib/libpcre2-8.so.0:
        libthr.so.3 => /lib/libthr.so.3 (0x6a226d429000)
        libc.so.7 => /lib/libc.so.7 (0x6a226dbfa000)
/lib/libz.so.6:
        libc.so.7 => /lib/libc.so.7 (0x6a226dbfa000)
/usr/local/lib/libintl.so.8:
        libc.so.7 => /lib/libc.so.7 (0x6a226dbfa000)
/lib/libthr.so.3:
        libc.so.7 => /lib/libc.so.7 (0x6a226dbfa000)

===
Mark Millard
marklmi at yahoo.com