Re: An odd "pkg info -d llvm20" result from pkg 2.1.0? : "gcc14-14.2.0_3 (libgcc_s.so.1)"; more; ldd -a does not agree

From: Mark Millard <marklmi_at_yahoo.com>
Date: Sat, 10 May 2025 07:52:42 UTC
On May 10, 2025, at 00:16, Baptiste Daroussin <bapt@FreeBSD.org> wrote:

> Le 10 mai 2025 01:10:44 GMT+02:00, Mark Millard <marklmi@yahoo.com> a écrit :
>> On May 9, 2025, at 15:25, Mark Millard <marklmi@yahoo.com> wrote:
>> 
>>> # pkg info -d llvm20
>>> llvm20-20.1.1:
>>>       python311-3.11.11
>>>       perl5-5.36.3_2
>>>       FreeBSD-clibs-15.snap20250505052519 (libc.so.7)
>>>       FreeBSD-clibs-15.snap20250505052519 (libcxxrt.so.1)
>>>       FreeBSD-clibs-15.snap20250505052519 (libdl.so.1)
>>>       libedit-3.1.20250104,1 (libedit.so.0)
>>>       FreeBSD-libexecinfo-15.snap20250505031148 (libexecinfo.so.1)
>>>       FreeBSD-clibs-15.snap20250505052519 (libformw.so.6)
>>>       gcc14-14.2.0_3 (libgcc_s.so.1)
>>>       FreeBSD-clibs-15.snap20250505052519 (libgcc_s.so.1)
>>>       FreeBSD-runtime-15.snap20250505162903 (libkvm.so.7)
>>>       lua53-5.3.6_1 (liblua-5.3.so)
>>>       FreeBSD-liblzma-15.snap20250505031148 (liblzma.so.5)
>>>       FreeBSD-clibs-15.snap20250505052519 (libm.so.5)
>>>       FreeBSD-clibs-15.snap20250505052519 (libncursesw.so.9)
>>>       FreeBSD-clibs-15.snap20250505052519 (libpanelw.so.6)
>>>       python311-3.11.11 (libpython3.11.so.1.0)
>>>       FreeBSD-clibs-15.snap20250505052519 (librt.so.1)
>>>       FreeBSD-clibs-15.snap20250505052519 (libthr.so.3)
>>>       FreeBSD-clibs-15.snap20250505052519 (libtinfow.so.9)
>>>       FreeBSD-runtime-15.snap20250505162903 (libz.so.6)
>>>       zstd-1.5.7 (libzstd.so.1)
>>> 
>>> 
>>> # pkg info -r gcc14
>>> gcc14-14.2.0_3:
>>>       bonnie++-1.98_1 (libgcc_s.so.1)
>>>       nmap-7.94_3 (libgcc_s.so.1)
>>>       smartmontools-7.4_2 (libgcc_s.so.1)
>>>       usbtop-1.0_7 (libgcc_s.so.1)
>>>       icu-76.1,1 (libgcc_s.so.1)
>>>       boost-libs-1.87.0_1 (libgcc_s.so.1)
>>>       source-highlight-3.1.9_12 (libgcc_s.so.1)
>>>       gdb-15.1_2 (libgcc_s.so.1)
>>>       ztop-0.3.0_1 (libgcc_s.so.1)
>>>       cmake-core-3.31.6 (libgcc_s.so.1)
>>>       jsoncpp-1.9.6_1 (libgcc_s.so.1)
>>>       libunwind-20240221_2 (libgcc_s.so.1)
>>>       mpdecimal-4.0.0 (libgcc_s.so.1)
>>>       gettext-runtime-0.23.1 (libgcc_s.so.1)
>>>       gmp-6.3.0 (libgcc_s.so.1)
>>>       gnutls-3.8.9 (libgcc_s.so.1)
>>>       python311-3.11.11 (libgcc_s.so.1)
>>>       py311-cryptography-42.0.8_7,1 (libgcc_s.so.1)
>>>       llvm20-20.1.1 (libgcc_s.so.1)
>>>       rust-1.85.1 (libgcc_s.so.1)
>>>       binutils-2.44,1 (libgcc_s.so.1)
>>>       FreeBSD-clibs-dev-15.snap20250505232657 (libgcc_s.so.1)
>>>       FreeBSD-devd-15.snap20250505031148 (libgcc_s.so.1)
>>>       FreeBSD-libexecinfo-15.snap20250505031148 (libgcc_s.so.1)
>>>       FreeBSD-libexecinfo-dev-15.snap20250427072831 (libgcc_s.so.1)
>>>       FreeBSD-libopencsd-15.snap20250427072831 (libgcc_s.so.1)
>>>       FreeBSD-libopencsd-dev-15.snap20250427072831 (libgcc_s.so.1)
>>>       FreeBSD-acct-15.snap20250505162903 (libgcc_s.so.1)
>>>       compat-libraries-20250505223026 (libgcc_s.so.1)
>>>       FreeBSD-clang-15.snap20250505210511 (libgcc_s.so.1)
>>>       FreeBSD-clang-dev-15.snap20250427072831 (libgcc_s.so.1)
>>>       FreeBSD-tests-15.snap20250505232657 (libgcc_s.so.1)
>>>       FreeBSD-tests-dev-15.snap20250504234620 (libgcc_s.so.1)
>>>       FreeBSD-utilities-15.snap20250505232657 (libgcc_s.so.1)
>>>       FreeBSD-utilities-dev-15.snap20250505210511 (libgcc_s.so.1)
>>>       FreeBSD-zfs-15.snap20250505162903 (libgcc_s.so.1)
>>>       e2fsprogs-core-1.47.2_1 (libgcc_s.so.1)
>>> 
>>> Using bonnie++ as a simple example showing that actually
>>> used is /lib/libgcc_s.so.1 :
>>> 
>>> # ldd -a /usr/local/sbin/bonnie++
>>> /usr/local/sbin/bonnie++:
>>> libthr.so.3 => /lib/libthr.so.3 (0x439cd32b3000)
>>> libc++.so.1 => /lib/libc++.so.1 (0x439cd8f80000)
>>> libcxxrt.so.1 => /lib/libcxxrt.so.1 (0x439cd3efa000)
>>> libm.so.5 => /lib/libm.so.5 (0x439ce4d50000)
>>> libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x439cd2845000)
>>> libc.so.7 => /lib/libc.so.7 (0x439cd6000000)
>>> /lib/libthr.so.3:
>>> libc.so.7 => /lib/libc.so.7 (0x439cd6000000)
>>> libsys.so.7 => /lib/libsys.so.7 (0x439ce8260000)
>>> /lib/libc++.so.1:
>>> libcxxrt.so.1 => /lib/libcxxrt.so.1 (0x439cd3efa000)
>>> libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x439cd2845000)
>>> libc.so.7 => /lib/libc.so.7 (0x439cd6000000)
>>> /lib/libcxxrt.so.1:
>>> libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x439cd2845000)
>>> libc.so.7 => /lib/libc.so.7 (0x439cd6000000)
>>> /lib/libm.so.5:
>>> libc.so.7 => /lib/libc.so.7 (0x439cd6000000)
>>> /lib/libgcc_s.so.1:
>>> libc.so.7 => /lib/libc.so.7 (0x439cd6000000)
>>> /lib/libc.so.7:
>>> libsys.so.7 => /lib/libsys.so.7 (0x439ce8260000)
>> 
>> That was an aarch64 context but lang/gcc14 does not
>> set up for lib32 for armv7.
>> 
>> So, on amd64 where lang/gcc14 does set up for lib32
>> for i386:
>> 
>> # pkg info -r gcc14
>> gcc14-14.2.0_3:
>> bonnie++-1.98_1 (libgcc_s.so.1)
>> nmap-7.94_3 (libgcc_s.so.1)
>> smartmontools-7.4_2 (libgcc_s.so.1)
>> usbtop-1.0_7 (libgcc_s.so.1)
>> jsoncpp-1.9.6_1 (libgcc_s.so.1)
>> mpdecimal-4.0.0 (libgcc_s.so.1)
>> gettext-runtime-0.23.1 (libgcc_s.so.1)
>> e2fsprogs-core-1.47.2 (libgcc_s.so.1)
>> gmp-6.3.0 (libgcc_s.so.1)
>> gnutls-3.8.9 (libgcc_s.so.1)
>> cmake-core-3.31.6 (libgcc_s.so.1)
>> icu-76.1,1 (libgcc_s.so.1)
>> boost-libs-1.87.0_1 (libgcc_s.so.1)
>> source-highlight-3.1.9_12 (libgcc_s.so.1)
>> gdb-15.1_2 (libgcc_s.so.1)
>> py311-cryptography-42.0.8_7,1 (libgcc_s.so.1)
>> libunwind-20240221_2 (libgcc_s.so.1)
>> aarch64-gcc14-14.1.0 (libgcc_s.so.1)
>> armv7-gcc14-14.1.0 (libgcc_s.so.1)
>> llvm20-20.1.2 (libgcc_s.so.1)
>> rust-1.86.0 (libgcc_s.so.1)
>> ztop-0.3.0_2 (libgcc_s.so.1)
>> binutils-2.44,1 (libgcc_s.so.1)
>> FreeBSD-acct-15.snap20250505161221 (libgcc_s.so.1)
>> FreeBSD-clibs-dev-15.snap20250505231001 (libgcc_s.so.1)
>> FreeBSD-devd-15.snap20250505025027 (libgcc_s.so.1)
>> FreeBSD-libexecinfo-15.snap20250505025027 (libgcc_s.so.1)
>> FreeBSD-libexecinfo-dev-15.snap20250427064858 (libgcc_s.so.1)
>> FreeBSD-clang-15.snap20250505204745 (libgcc_s.so.1)
>> FreeBSD-clang-dev-15.snap20250427064858 (libgcc_s.so.1)
>> FreeBSD-tests-15.snap20250505231001 (libgcc_s.so.1)
>> FreeBSD-tests-dev-15.snap20250504232121 (libgcc_s.so.1)
>> FreeBSD-utilities-15.snap20250505231001 (libgcc_s.so.1)
>> FreeBSD-utilities-dev-15.snap20250505204745 (libgcc_s.so.1)
>> FreeBSD-zfs-15.snap20250505161221 (libgcc_s.so.1)
>> FreeBSD-clibs-dev-lib32-15.snap20250505050850 (libgcc_s.so.1:32)
>> FreeBSD-libexecinfo-dev-lib32-15.snap20250427064858 (libgcc_s.so.1:32)
>> FreeBSD-libexecinfo-lib32-15.snap20250505025027 (libgcc_s.so.1:32)
>> FreeBSD-clang-15.snap20250505204745 (libgcc_s.so.1:32)
>> FreeBSD-utilities-dev-lib32-15.snap20250505204745 (libgcc_s.so.1:32)
>> FreeBSD-utilities-lib32-15.snap20250505231001 (libgcc_s.so.1:32)
>> 
>> Note the "*-lib32-*:32" examples at the end of the list.
>> 
>> NOTE: I only have the one lang/gcc* installed in each context: gcc14 .
>> 
>> NOTE: The boot kernels and worlds are official PkgBase installs.
>> NOTE: The port packages are official main-*-default package installs.
>> 
>> # uname -apKU
>> FreeBSD 7950X3D-ZFS 15.0-CURRENT FreeBSD 15.0-CURRENT main-n277044-fd03d573cb80 GENERIC-NODEBUG amd64 amd64 1500040 1500040
>> 
>> And, for the aarch64 context:
>> 
>> # uname -apKU
>> FreeBSD aarch64-main-pbase 15.0-CURRENT FreeBSD 15.0-CURRENT main-n277044-fd03d573cb80 GENERIC-NODEBUG arm64 aarch64 1500040 1500040
>> 
>> 
>> ===
>> Mark Millard
>> marklmi at yahoo.com
>> 
> 
> can you provide your gcc14 package somewhere that I can fetch?

On both amd64 and aarch64, my gcc14 that is involved is from
installation of what the official FreeBSD build servers
provide, not a personal build.

Does the following information provide what you need to
access those files?


amd64:

# cat /etc/pkg/FreeBSD.conf
#
# To disable this repository, instead of modifying or removing this file,
# create a /usr/local/etc/pkg/repos/FreeBSD.conf file:
#
#   mkdir -p /usr/local/etc/pkg/repos
#   echo "FreeBSD: { enabled: no }" > /usr/local/etc/pkg/repos/FreeBSD.conf
#

FreeBSD: {
  url: "pkg+https://pkg.FreeBSD.org/${ABI}/latest",
  mirror_type: "srv",
  signature_type: "fingerprints",
  fingerprints: "/usr/share/keys/pkg",
  enabled: yes
}

# pkg update -rFreeBSD
Updating FreeBSD repository catalogue...
FreeBSD repository is up to date.
FreeBSD is up to date.

# ls -lodT /var/cache/pkg/gcc14-14.2.0_3*
lrwxr-xr-x  1 root wheel uarch        29 Apr 28 22:00:55 2025 /var/cache/pkg/gcc14-14.2.0_3.pkg -> gcc14-14.2.0_3~a990e7b371.pkg
-rw-r--r--  1 root wheel uarch 100570911 Apr 19 23:03:02 2025 /var/cache/pkg/gcc14-14.2.0_3~a990e7b371.pkg

# pkg info gcc14
gcc14-14.2.0_3
Name           : gcc14
Version        : 14.2.0_3
Installed on   : Mon Apr 28 22:01:12 2025 PDT
Origin         : lang/gcc14
Architecture   : FreeBSD:15:amd64
Prefix         : /usr/local
Categories     : lang
Licenses       : GPLv3, GPLv3RLE
Maintainer     : salvadore@FreeBSD.org
WWW            : https://gcc.gnu.org
Comment        : GNU Compiler Collection 14
Options        :
GRAPHITE       : off
LTO_BOOTSTRAP  : off
MULTILIB       : on
STANDARD_BOOTSTRAP: on
Shared Libs required:
libc.so.7
libc.so.7:32
libdl.so.1
libdl.so.1:32
libgmp.so.10
libm.so.5
libm.so.5:32
libmpc.so.3
libmpfr.so.6
librt.so.1
librt.so.1:32
libthr.so.3
libthr.so.3:32
libz.so.6
Shared Libs provided:
libasan.so.8
libasan.so.8:32
libatomic.so.1
libatomic.so.1:32
libcc1.so.0
libgcc_s.so.1
libgcc_s.so.1:32
libgccjit.so.0
libgfortran.so.5
libgfortran.so.5:32
libgomp.so.1
libgomp.so.1:32
libitm.so.1
libitm.so.1:32
libquadmath.so.0
libquadmath.so.0:32
libstdc++.so.6
libstdc++.so.6:32
libubsan.so.1
libubsan.so.1:32
Annotations    :
FreeBSD_version: 1500037
build_timestamp: 2025-04-20T03:33:12+0000
built_by       : poudriere-git-3.4.2-9-g05a460dc
cpe            : cpe:2.3:a:gnu:gcc:14.2.0:::::freebsd15:x64:3
port_checkout_unclean: no
port_git_hash  : 13904d71074
ports_top_checkout_unclean: no
ports_top_git_hash: e3d1564d6c1
repo_type      : binary
repository     : FreeBSD
Flat size      : 359MiB
Description    :
GCC, the GNU Compiler Collection, supports a number of languages.
This port installs the C, C++, and Fortran front ends as gcc14, g++14,
and gfortran14, respectively.


aarch64:

# cat /etc/pkg/FreeBSD.conf
#
# To disable this repository, instead of modifying or removing this file,
# create a /usr/local/etc/pkg/repos/FreeBSD.conf file:
#
#   mkdir -p /usr/local/etc/pkg/repos
#   echo "FreeBSD: { enabled: no }" > /usr/local/etc/pkg/repos/FreeBSD.conf
#

FreeBSD: {
  url: "pkg+http://pkg.FreeBSD.org/${ABI}/latest",
  mirror_type: "srv",
  signature_type: "fingerprints",
  fingerprints: "/usr/share/keys/pkg",
  enabled: yes
}

# pkg update -rFreeBSD
Updating FreeBSD repository catalogue...
FreeBSD repository is up to date.
FreeBSD is up to date.

# ls -lodT /var/cache/pkg/gcc14-14.2.0_3*
lrwxr-xr-x  1 root wheel -       29 Apr 28 22:04:17 2025 /var/cache/pkg/gcc14-14.2.0_3.pkg -> gcc14-14.2.0_3~f5cb04138f.pkg
-rw-r--r--  1 root wheel - 87781185 Apr  9 15:38:14 2025 /var/cache/pkg/gcc14-14.2.0_3~f5cb04138f.pkg

# pkg update -rFreeBSD
Updating FreeBSD repository catalogue...
FreeBSD repository is up to date.
FreeBSD is up to date.
aarch64-main-pbase aarch64  1500040 1500040 # pkg info gcc14
gcc14-14.2.0_3
Name           : gcc14
Version        : 14.2.0_3
Installed on   : Mon Apr 28 22:06:23 2025 PDT
Origin         : lang/gcc14
Architecture   : FreeBSD:15:aarch64
Prefix         : /usr/local
Categories     : lang
Licenses       : GPLv3, GPLv3RLE
Maintainer     : salvadore@FreeBSD.org
WWW            : https://gcc.gnu.org
Comment        : GNU Compiler Collection 14
Options        :
GRAPHITE       : off
LTO_BOOTSTRAP  : off
STANDARD_BOOTSTRAP: on
Shared Libs required:
libc.so.7
libdl.so.1
libgmp.so.10
libm.so.5
libmpc.so.3
libmpfr.so.6
libthr.so.3
libz.so.6
Shared Libs provided:
libatomic.so.1
libcc1.so.0
libgcc_s.so.1
libgccjit.so.0
libgfortran.so.5
libgomp.so.1
libitm.so.1
libstdc++.so.6
Annotations    :
FreeBSD_version: 1500035
build_timestamp: 2025-04-09T16:36:09+0000
built_by       : poudriere-git-3.4.2-7-gf78625a5
cpe            : cpe:2.3:a:gnu:gcc:14.2.0:::::freebsd15:aarch64:3
port_checkout_unclean: no
port_git_hash  : 13904d71074
ports_top_checkout_unclean: no
ports_top_git_hash: 25bf3a3260c
repo_type      : binary
repository     : FreeBSD
Flat size      : 301MiB
Description    :
GCC, the GNU Compiler Collection, supports a number of languages.
This port installs the C, C++, and Fortran front ends as gcc14, g++14,
and gfortran14, respectively.


===
Mark Millard
marklmi at yahoo.com