FreeBSD-clang provides both libclang_rt.asan-x86_64.so and the (should be?) lib32 item: libclang_rt.asan-i386.so:32 ? More . . .

From: Mark Millard <marklmi_at_yahoo.com>
Date: Mon, 20 Oct 2025 19:00:26 UTC
(Test context main 16, not a 15.0-BETA* .)

FreeBS-clang provides both 64-bit and a 32-bit library:

# pkg info -b FreeBSD-clang
FreeBSD-clang-16.snap20251014184832:
	libclang_rt.asan-i386.so:32
	libclang_rt.asan-x86_64.so
	libprivateclang.so.19
	libprivatellvm.so.19

# file /usr/lib/clang/19/lib/freebsd/libclang_rt.asan-i386.so
/usr/lib/clang/19/lib/freebsd/libclang_rt.asan-i386.so: ELF 32-bit LSB shared object, Intel i386, version 1 (FreeBSD), dynamically linked, for FreeBSD 16.0 (1600001), stripped

# ldd -a /usr/lib/clang/19/lib/freebsd/libclang_rt.asan-i386.so
/usr/lib/clang/19/lib/freebsd/libclang_rt.asan-i386.so:
	libgcc_s.so.1 => /usr/lib32/libgcc_s.so.1 (0x209d1000)
	libc.so.7 => /usr/lib32/libc.so.7 (0x209f0000)
/usr/lib32/libgcc_s.so.1:
	libc.so.7 => /usr/lib32/libc.so.7 (0x209f0000)
/usr/lib32/libc.so.7:
	libsys.so.7 => /usr/lib32/libsys.so.7 (0x20bef000)
[preloaded]
	[vdso] (0xffffe780)

Note that those in turn lead to /usr/lib32/
dependencies being involved overall.

That might contribute to why both lib.c.so.7
and lib.c.so.7:32 and both libgcc_s.so.1 and
libgcc_s.so.1:32 more show up in:

# pkg info -d FreeBSD-clang
FreeBSD-clang-16.snap20251014184832:
	FreeBSD-lld-16.snap20250930012546
	FreeBSD-libcompiler_rt-dev-16.snap20250923153156
	FreeBSD-clibs-16.snap20251014203606 (libc++.so.1)
	FreeBSD-clibs-16.snap20251014203606 (libc.so.7)
	FreeBSD-clibs-lib32-16.snap20251014184832 (libc.so.7:32)
	FreeBSD-clibs-16.snap20251014203606 (libcxxrt.so.1)
	FreeBSD-libexecinfo-16.snap20251003201239 (libexecinfo.so.1)
	FreeBSD-clibs-16.snap20251014203606 (libgcc_s.so.1)
	FreeBSD-clibs-lib32-16.snap20251014184832 (libgcc_s.so.1:32)
	FreeBSD-clibs-16.snap20251014203606 (libm.so.5)
	FreeBSD-ncurses-16.snap20251003201239 (libncursesw.so.9)
	FreeBSD-runtime-16.snap20251014184832 (libprivatezstd.so.5)
	FreeBSD-clibs-16.snap20251014203606 (libthr.so.3)
	FreeBSD-ncurses-16.snap20251003201239 (libtinfow.so.9)
	FreeBSD-runtime-16.snap20251014184832 (libz.so.6)

and both lib.c.so.7 and lib.c.so.7:32 in:

# pkg info -B FreeBSD-clang
FreeBSD-clang-16.snap20251014184832:
	libc++.so.1
	libc.so.7
	libc.so.7:32
	libcxxrt.so.1
	libexecinfo.so.1
	libgcc_s.so.1
	libgcc_s.so.1:32
	libm.so.5
	libncursesw.so.9
	libprivatezstd.so.5
	libthr.so.3
	libtinfow.so.9
	libz.so.6

Note: Deliberately done in an environment that does
not have any lang/gcc* installed [avoiding MULTILIB
being involved in the context. Otherwise other issues
lead to more confusing output for "info -d".


===
Mark Millard
marklmi at yahoo.com