RE: libutil.so.9 not found (was: HEADS-UP: pkgbase pkg upgrade breaks systems Re: after updating to latest, pkg base segfaults and leaves me unbootable)
Date: Wed, 13 Aug 2025 10:13:05 UTC
Graham Perrin <grahamperrin_at_gmail.com> wrote on Date: Wed, 13 Aug 2025 06:34:46 UTC : > On 11/08/2025 01:17, Dan Mahoney (Ports) wrote: > > … pkg is still being persnickety, and I don't know what the mechanism is to bootstrap it is: > > > > # ldd /usr/local/sbin/pkg > > /usr/local/sbin/pkg: > > libelf.so.2 => /lib/libelf.so.2 (0x2a08ac8d1000) > > libjail.so.1 => /lib/libjail.so.1 (0x2a08ad283000) > > libm.so.5 => /lib/libm.so.5 (0x2a08adcbd000) > > libarchive.so.7 => /usr/lib/libarchive.so.7 (0x2a08ae37a000) > > libz.so.6 => /lib/libz.so.6 (0x2a08abe01000) > > libutil.so.9 => not found (0) > > … > > > I guess, that explains pkg non-usable in the shell when booting > FreeBSD-15.0-CURRENT-amd64-20250807-02f394281fd6-279407-disc1.iso > > > ld-elf.so.1: Shared object "libutil.so.9" not found, required by "pkg" Yes, the port-packages builder's poudriere jail world was older than the change to libutil.so.10 and, so, still had libutil.so.9 . That was mixed with a newer FreeBSD that instead had libutil.so.10 . There are later changes from libcrypto.so.30 to libcrypto.so.35 and libssl.so.30 to libssl.so.35 that have the same time relationship issue for some more recent port package builder poudriere runs as I understand. Such coordination issues are one of the consequences of pkg not being built and distributed as part of the FreeBSD world but as a ports-package. (I ignore here, other constraints that lead it to be a ports-package instead.) At some point the port-package builder jail worlds for main-* (amd64, aarch64, armv7, and possibly i386 for a time) need to be updated to have a FreeBSD world version that is based on having all 3 of: libutil.so.10 libcrypto.so.35 libssl.so.35 May be at some point the infrastructure could detect such mismatches for the likes of FreeBSD-*.0-CURRENT-*.iso being assembled using a too-old pkg that would otherwise be included --and prevent forming a distribution with a pkg that was not operable because it is too old. Another issue is how long main-* port-package builder runs take as stands, especially for aarch64 and armv7 that share the same builder machine (ampere2). === Mark Millard marklmi at yahoo.com