Warum ziehen alle Pakete unter FreeBSD 15 gcc12-devel-12.4.1.s20250702?

jmt

Well-Known Member
Der Titel sagt es schon. Egal was ich unter FreeBSD 15 installiere, das Paket gcc12-devel-12.4.1.s20250702 wird mitinstalliert. Weiß jemand von Euch warum? Ist ja auch noch ein "devel" Paket???
Ach ja, die Installation ist PKGBASE.
 
Nutzt du Latest oder Quarterly Packages? Zeig mal deine /usr/local/etc/pkg/repos/foobar.conf. Dennoch mal ein Schuss ins Blaue: Sollte dort noch ein Eintrag "FreeBSD:" vorhanden sein, könnte das die Ursache sein. Hier muss seit 15.0 "FreeBSD-ports:" statt "FreeBSD:" stehen.
 
Das ist mein lokales FreeBSD.conf in den Jails:

Code:
#
# To disable a repository, instead of modifying or removing this file,
# create a /usr/local/etc/pkg/repos/FreeBSD.conf file, e.g.:
#
#   mkdir -p /usr/local/etc/pkg/repos
#   echo "FreeBSD-ports: { enabled: no }" > /usr/local/etc/pkg/repos/FreeBSD.conf
#   echo "FreeBSD-ports-kmods: { enabled: no }" >> /usr/local/etc/pkg/repos/FreeBSD.conf
#
# Note that the FreeBSD-base repository is disabled by default.
#

FreeBSD-ports: {
  url: "pkg+https://pkg.FreeBSD.org/${ABI}/latest",
  ip_version: 6,
  enabled: yes
}
FreeBSD-ports-kmods: {
  ip_version: 6,
  enabled: no
}
FreeBSD-base: {
  ip_version: 6,
  enabled: no
}
Die Installation ist eine firüsche FreeBSD 15 Installation, also ohne Altlasten.
 
Wo wird bei PKGBASE eigentlich festgelegt, welche "Paketgruppen" man haben möchte? Ich brauche z.B. im Allgemeinen keinen 32Bit Kram.
 
Also, um das Thema mal etwas zu untermauern: Wenn ich ein leeres Jail anlege, also nur OS, dann wird gcc12-devel nicht installiert. Installiere ich dann ksh, dann werden folgende Pakete installiert:

Code:
pkg install -f ksh
Updating FreeBSD-ports repository catalogue...
FreeBSD-ports repository is up to date.
All repositories are up to date.
Checking integrity... done (0 conflicting)
The following 8 package(s) will be affected (of 0 checked):

New packages to be INSTALLED:
        binutils: 2.44,1
        gcc12-devel: 12.4.1.s20250702
        gmp: 6.3.0
        indexinfo: 0.3.1_1
        mpc: 1.3.1_1
        mpfr: 4.2.2,1
        zstd: 1.5.7_1

Installed packages to be REINSTALLED:
        ksh-1.0.10

Number of packages to be installed: 7
Number of packages to be reinstalled: 1

The process will require 486 MiB more space.

Proceed with this action? [y/N]:
Hier die Ausgabe für den Reinstall. Deinstalliere ich nämlich gcc12-devel und mache in pkg autoremove, dann bleibt ksh, pkg und ein Schwung von FreeBSD-Paketen

Code:
FreeBSD-acct-15.0              System resource accounting
FreeBSD-at-15.0                Scheduled and batch command utilities
FreeBSD-atf-15.0               Automated Testing Framework
FreeBSD-atf-dev-15.0           Automated Testing Framework (development files)
FreeBSD-atf-lib-15.0           Automated Testing Framework (libraries)
FreeBSD-audit-15.0             OpenBSM auditing utilities
FreeBSD-audit-dev-15.0         OpenBSM auditing utilities (development files)
FreeBSD-audit-lib-15.0         OpenBSM auditing utilities (libraries)
FreeBSD-autofs-15.0            File system automounter
FreeBSD-bhyve-15.0             bhyve virtual machine hypervisor
FreeBSD-blocklist-15.0         Network blocklist daemon
FreeBSD-blocklist-dev-15.0     Network blocklist daemon (development files)
FreeBSD-bluetooth-15.0         Bluetooth support
FreeBSD-bluetooth-dev-15.0     Bluetooth support (development files)
FreeBSD-bluetooth-lib-15.0     Bluetooth support (libraries)
FreeBSD-bmake-15.0             Program maintenance utility
FreeBSD-bootloader-15.0        System boot loader
FreeBSD-bootloader-dev-15.0    System boot loader (development files)
FreeBSD-bsdconfig-15.0         System configuration utility
FreeBSD-bsdinstall-15.0        System installer
FreeBSD-bsnmp-15.0             Simple and extensible SNMP daemon
FreeBSD-bsnmp-dev-15.0         Simple and extensible SNMP daemon (development files)
FreeBSD-bzip2-15.0             A block-sorting data compressor
FreeBSD-bzip2-dev-15.0         A block-sorting data compressor (development files)
FreeBSD-bzip2-lib-15.0         A block-sorting data compressor (libraries)
FreeBSD-caroot-15.0            Mozilla Root Store trusted TLS certificates
FreeBSD-certctl-15.0           Tool for managing trusted and untrusted TLS certificates
FreeBSD-clang-15.0             The Clang C, C++, and Objective-C compiler
FreeBSD-clang-dev-15.0         The Clang C, C++, and Objective-C compiler (development files)
FreeBSD-clibs-15.0             Core runtime libraries
FreeBSD-clibs-dev-15.0         Core runtime libraries (development files)
FreeBSD-cron-15.0              Command scheduling facility
FreeBSD-csh-15.0               C shell with file name completion and command line editing
FreeBSD-ctf-15.0               Compact C Type Format (CTF)
FreeBSD-ctf-dev-15.0           Compact C Type Format (CTF) (development files)
FreeBSD-ctf-lib-15.0           Compact C Type Format (CTF) (libraries)
FreeBSD-devd-15.0              Kernel event handling daemon
FreeBSD-devmatch-15.0          Automatically load kernel drivers for attached hardware
FreeBSD-devmatch-dev-15.0      Automatically load kernel drivers for attached hardware (development files)
FreeBSD-dhclient-15.0          Dynamic Host Configuration Protocol (DHCP) client
FreeBSD-diff3-15.0             GNU 3-way file comparison and merge utility
FreeBSD-dma-15.0               DragonFly Mail Agent
FreeBSD-dtrace-15.0            DTrace dynamic tracing framework
FreeBSD-dtrace-dev-15.0        DTrace dynamic tracing framework (development files)
FreeBSD-ee-15.0                Easy Editor
FreeBSD-efi-tools-15.0         Utilities for the Unified Extensible Firmware Interface (UEFI)
FreeBSD-efi-tools-dev-15.0     Utilities for the Unified Extensible Firmware Interface (UEFI) (development files)
FreeBSD-examples-15.0          System interface examples
FreeBSD-fetch-15.0             Retrieve a file from a remote URL
FreeBSD-fetch-dev-15.0         Retrieve a file from a remote URL (development files)
FreeBSD-flua-15.0              Private Lua implementation
FreeBSD-flua-dev-15.0          Private Lua implementation (development files)
FreeBSD-ftp-15.0               File Transfer Protocol (FTP) client
FreeBSD-games-15.0             Games
FreeBSD-gssd-15.0              gssd(8) daemon for kernel GSS-API
FreeBSD-inetd-15.0             Internet super-server
FreeBSD-ipf-15.0               IP Filter (ipf) packet filter management tools
FreeBSD-ipfw-15.0              ipfw (IP firewall) management utilities
FreeBSD-jail-15.0              Jail management tools
FreeBSD-kerberos-15.0          Kerberos client
FreeBSD-kerberos-dev-15.0      Kerberos client (development files)
FreeBSD-kerberos-kdc-15.0      Kerberos key distribution center
FreeBSD-kerberos-lib-15.0      Kerberos client (libraries)
FreeBSD-kernel-man-15.0        Kernel manual pages
FreeBSD-kyua-15.0              Testing framework for infrastructure software
FreeBSD-lib9p-15.0             9P network protocol library
FreeBSD-lib9p-dev-15.0         9P network protocol library (development files)
FreeBSD-libarchive-15.0        Library for reading and writing streaming archives
FreeBSD-libarchive-dev-15.0    Library for reading and writing streaming archives (development files)
FreeBSD-libbegemot-15.0        rpoll(3) interface for event-driven I/O
FreeBSD-libbegemot-dev-15.0    rpoll(3) interface for event-driven I/O (development files)
FreeBSD-libblocksruntime-15.0  LLVM BlocksRuntime library
FreeBSD-libblocksruntime-dev-15.0 LLVM BlocksRuntime library (development files)
FreeBSD-libbsdstat-15.0        Periodic statistics library
FreeBSD-libbsdstat-dev-15.0    Periodic statistics library (development files)
FreeBSD-libcasper-15.0         Casper library
FreeBSD-libcasper-dev-15.0     Casper library (development files)
FreeBSD-libcompat-dev-15.0     Compatibility library (development files)
FreeBSD-libcompiler_rt-dev-15.0 LLVM compiler_rt library (development files)
FreeBSD-libcuse-15.0           Userland character device library
FreeBSD-libcuse-dev-15.0       Userland character device library (development files)
FreeBSD-libdwarf-15.0          DWARF access library
FreeBSD-libdwarf-dev-15.0      DWARF access library (development files)
FreeBSD-libevent1-15.0         Private libevent1 library
FreeBSD-libevent1-dev-15.0     Private libevent1 library (development files)
FreeBSD-libexecinfo-15.0       NetBSD stack backtrace library
FreeBSD-libexecinfo-dev-15.0   NetBSD stack backtrace library (development files)
FreeBSD-libipt-15.0            Intel(R) Processor Trace decoder library
FreeBSD-libipt-dev-15.0        Intel(R) Processor Trace decoder library (development files)
FreeBSD-libldns-15.0           Private LDNS library
FreeBSD-libldns-dev-15.0       Private LDNS library (development files)
FreeBSD-libmagic-15.0          Magic number recognition library
FreeBSD-libmagic-dev-15.0      Magic number recognition library (development files)
FreeBSD-libmilter-15.0         sendmail Mail Filter API library
FreeBSD-libmilter-dev-15.0     sendmail Mail Filter API library (development files)
FreeBSD-libpathconv-15.0       Library for handling relative and absolute pathnames
FreeBSD-libpathconv-dev-15.0   Library for handling relative and absolute pathnames (development files)
FreeBSD-librpcsec_gss-15.0     RPCSEC_GSS library
FreeBSD-librpcsec_gss-dev-15.0 RPCSEC_GSS library (development files)
FreeBSD-librss-15.0            Receive-side scaling library
FreeBSD-librss-dev-15.0        Receive-side scaling library (development files)
FreeBSD-libsqlite3-15.0        Private SQLite library
FreeBSD-libsqlite3-dev-15.0    Private SQLite library (development files)
FreeBSD-libthread_db-15.0      Library for interacting with threaded processes
FreeBSD-libthread_db-dev-15.0  Library for interacting with threaded processes (development files)
FreeBSD-libucl-15.0            Private Universal Configuration Library (UCL) library
FreeBSD-libucl-dev-15.0        Private Universal Configuration Library (UCL) library (development files)
FreeBSD-libvgl-15.0            Video Graphics Library
FreeBSD-libvgl-dev-15.0        Video Graphics Library (development files)
FreeBSD-libvmmapi-15.0         Front-end library for the vmm(4) virtualization driver
FreeBSD-libvmmapi-dev-15.0     Front-end library for the vmm(4) virtualization driver (development files)
FreeBSD-libyaml-15.0           Private YAML library
FreeBSD-libyaml-dev-15.0       Private YAML library (development files)
FreeBSD-lld-15.0               LLVM ELF link loader
FreeBSD-lldb-15.0              LLVM debugger
FreeBSD-lldb-dev-15.0          LLVM debugger (development files)
FreeBSD-local-unbound-15.0     NLnet Labs Unbound DNS resolver
FreeBSD-local-unbound-dev-15.0 NLnet Labs Unbound DNS resolver (development files)
FreeBSD-locales-15.0           Locale definitions
FreeBSD-lp-15.0                Print spooler
FreeBSD-mandoc-15.0            Online manual page reader
FreeBSD-mtree-15.0             Filesystem hierarchy management tool
FreeBSD-natd-15.0              Userland Network Address Translation (NAT) for ipfw
FreeBSD-natd-dev-15.0          Userland Network Address Translation (NAT) for ipfw (development files)
FreeBSD-ncurses-15.0           ncurses terminal control library
FreeBSD-ncurses-dev-15.0       ncurses terminal control library (development files)
FreeBSD-ncurses-lib-15.0       ncurses terminal control library (libraries)
FreeBSD-netmap-15.0            Userland netmap support
FreeBSD-netmap-dev-15.0        Userland netmap support (development files)
FreeBSD-newsyslog-15.0         Create and rotate system log files
FreeBSD-nfs-15.0               NFS client and server utilities
FreeBSD-ntp-15.0               Network Time Protocol (NTP) daemon
FreeBSD-openssl-15.0           OpenSSL Transport Layer Security (TLS) library
FreeBSD-openssl-dev-15.0       OpenSSL Transport Layer Security (TLS) library (development files)
FreeBSD-openssl-lib-15.0       OpenSSL Transport Layer Security (TLS) library (libraries)
FreeBSD-periodic-15.0          Run periodic system functions
FreeBSD-pf-15.0                OpenBSD packet filter
FreeBSD-pf-dev-15.0            OpenBSD packet filter (development files)
FreeBSD-pkg-bootstrap-15.0     pkg(7) bootstrap utility
FreeBSD-pmc-15.0               Support for hardware performance counters
FreeBSD-pmc-dev-15.0           Support for hardware performance counters (development files)
FreeBSD-ppp-15.0               Point-to-Point Protocol (PPP) utilities
FreeBSD-quotacheck-15.0        Filesystem quota consistency checker
FreeBSD-rc-15.0                rc(8) subsystem
FreeBSD-rcmds-15.0             BSD/SunOS remote status commands
FreeBSD-rdma-15.0              Remote Direct Memory Access (RDMA) and InfiniBand utilities
FreeBSD-resolvconf-15.0        A framework for managing multiple DNS configurations
FreeBSD-rip-15.0               RIP routing protocol
FreeBSD-runtime-15.0p1         Core system
FreeBSD-runtime-dev-15.0       Core system (development files)
FreeBSD-sendmail-15.0          sendmail mail transport agent
FreeBSD-set-base-jail-15.0     Base system for jails (metapackage)
FreeBSD-set-devel-15.0         Development tools (metapackage)
FreeBSD-set-minimal-jail-15.0  Basic multi-user jail system (metapackage)
FreeBSD-set-optional-jail-15.0 Optional base system software for jails (metapackage)
FreeBSD-smbutils-15.0          SMB network filesystem utilities
FreeBSD-smbutils-dev-15.0      SMB network filesystem utilities (development files)
FreeBSD-sound-15.0             Audio utilities
FreeBSD-sound-dev-15.0         Audio utilities (development files)
FreeBSD-ssh-15.0               OpenSSH Secure Shell client and server
FreeBSD-ssh-dev-15.0           OpenSSH Secure Shell client and server (development files)
FreeBSD-syslogd-15.0           System logging daemon
FreeBSD-tcpd-15.0              TCP Wrappers access control facility
FreeBSD-tcpd-dev-15.0          TCP Wrappers access control facility (development files)
FreeBSD-telnet-15.0            TELNET client
FreeBSD-toolchain-15.0         Utilities for program development
FreeBSD-toolchain-dev-15.0     Utilities for program development (development files)
FreeBSD-ufs-15.0               UFS filesystem support
FreeBSD-ufs-dev-15.0           UFS filesystem support (development files)
FreeBSD-ufs-lib-15.0           UFS filesystem support (libraries)
FreeBSD-utilities-15.0p1       Non-vital programs and libraries
FreeBSD-utilities-dev-15.0     Non-vital programs and libraries (development files)
FreeBSD-vi-15.0                Text editor
FreeBSD-xz-15.0                LZMA2 data compression
FreeBSD-xz-dev-15.0            LZMA2 data compression (development files)
FreeBSD-xz-lib-15.0            LZMA2 data compression (libraries)
FreeBSD-yp-15.0                Yellow Pages (YP) / Network Information Service (NIS)
FreeBSD-zfs-15.0               ZFS filesystem support
FreeBSD-zfs-dev-15.0           ZFS filesystem support (development files)
FreeBSD-zfs-lib-15.0           ZFS filesystem support (libraries)
FreeBSD-zlib-15.0              DEFLATE (gzip) data compression library
FreeBSD-zlib-dev-15.0          DEFLATE (gzip) data compression library (development files)
FreeBSD-zoneinfo-15.0          Timezone database
ksh-1.0.10                     ksh93u+m is the renewed development of ksh93 based on AT&T ksh93u+m (stable)
pkg-2.5.1                      Package manager
root@test:/ #
Die nächste Frage wäre dann, wie ich die FreeBSD-Pakete eindampfen kann. UFS ist ja z.B. in einem ZFS-Jail sinnlos. Aber dazu später...
 
Also wenn ich ksh bei mir installieren will, sind da keine Abhängigkeiten (bin aber noch auf 14.3).
Und wenn ich mir Freshports und die Makefile an schau, finde ich dort auch keine.

Freshports: This port has no dependencies.
Makefile: keine RUN_DEPENDS

Was kommt bei dir denn bei folgendem raus?
Code:
$ pkg info -d ksh
ksh-1.0.10:
$

Nachtrag:
So hab mal schnell eine VM mit 15 und pkg-base installiert, auch da kommt das gleiche Ergebnis.
Wenn ich ksh installiere, wird kein gcc12-devel installiert.

Aber interessanter weiße kommt folgendes bei den Abhängigkeiten:
Code:
$ pkg info -d ksh
ksh-1.0.10:
        FreeBSD-clibs-15.0 (libc.so.7)
        FreeBSD-clibs-15.0 (libm.so.5)
        FreeBSD-runtime-15.0p1 (libmd.so.7)
        FreeBSD-runtime-15.0p1 (libutil.so.10)
$
 
Zuletzt bearbeitet:
Hast Du lib32 bei der Installation ausgewählt? Ich habe mal ein Jail mit lib32 gebaut. Da habe ich den Effekt nicht.
 
Hier mal ein Vergleich der Jails:

Mit lib32:
Code:
pkg info -d FreeBSD-acct-15.0
FreeBSD-acct-15.0:
        FreeBSD-clibs-15.0 (libc++.so.1)
        FreeBSD-clibs-15.0 (libc.so.7)
        FreeBSD-clibs-15.0 (libcxxrt.so.1)
        FreeBSD-clibs-15.0 (libgcc_s.so.1)
        FreeBSD-clibs-15.0 (libm.so.5)
        FreeBSD-runtime-15.0p1 (libxo.so.0)

Ohne lib32:
Code:
pkg info -d FreeBSD-acct-15.0
FreeBSD-acct-15.0:
        FreeBSD-clibs-15.0 (libc++.so.1)
        FreeBSD-clibs-15.0 (libc.so.7)
        FreeBSD-clibs-15.0 (libcxxrt.so.1)
        FreeBSD-clibs-15.0 (libgcc_s.so.1)
        gcc12-devel-12.4.1.s20250702 (libgcc_s.so.1)
        FreeBSD-clibs-15.0 (libm.so.5)
        FreeBSD-runtime-15.0p1 (libxo.so.0)

Wie gesagt, die ksh läuft auch, wenn ich gcc12-devel entferne. Und ich kann gcc12-devel entfernen, ohne dass er mir ksh deinstalliert. Beim nächsten Install kommt dann halt gcc12-devel wieder.
 
Es scheint bei der Installation ohne lib32 mit der FreeBSD-libexecinfo zu kommen:

Code:
pkg info -d FreeBSD-libexecinfo
FreeBSD-libexecinfo-15.0:
        FreeBSD-clibs-15.0 (libc.so.7)
        FreeBSD-runtime-15.0p1 (libelf.so.2)
        FreeBSD-clibs-15.0 (libgcc_s.so.1)
        gcc12-devel-12.4.1.s20250702 (libgcc_s.so.1)
Mit lib32 ist das Ergebnis wiefolgt:

Code:
pkg info -d FreeBSD-libexecinfo
FreeBSD-libexecinfo-15.0:
        FreeBSD-clibs-15.0 (libc.so.7)
        FreeBSD-runtime-15.0p1 (libelf.so.2)
        FreeBSD-clibs-15.0 (libgcc_s.so.1)
 
Ne, lib32 hab ich schon seit vielen vielen Jahre nicht mehr installiert.
Bei der 15er Installation habe ich gar kein Set ausgewählt, was in "minimal" resultiert.
 
Bei mir sieht das so aus. Ich nehme dann lib32 raus. Machst Du das auch mit bsdinstall? Oder gibt es da andere Möglichkeiten? Mein Phänomen ist da, wenn man nur base-jail auswählt.
629DBD2F-1964-45B4-8D3A-A884E32FEC4F.webp
 
Ich gebe zu, ich bin gar nicht auf die Idee gekommen, alle packages auszuschalten. base-jail klang für mich irgendwie notwendig. Ohne base-jail, also ohne alle additional packages, hat man ja schön kleine Jails und gcc12-devel wird auch nicht gebraucht. Das hilft erst einmal. :)
 
Das ist genau das was ich gemacht hatte, alle Set abgewählt und install.

Hab das gerade auch nochmal mit aktivem "base-jail" Set probiert:
Code:
$ pkg info -d ksh
ksh-1.0.10:
        FreeBSD-clibs-15.0 (libc.so.7)
        FreeBSD-clibs-15.0 (libm.so.5)
        FreeBSD-runtime-15.0p1 (libmd.so.7)
        FreeBSD-runtime-15.0p1 (libutil.so.10)
$ pkg info -d FreeBSD-libexecinfo-15.0
FreeBSD-libexecinfo-15.0:
        FreeBSD-clibs-15.0 (libc.so.7)
        FreeBSD-runtime-15.0p1 (libelf.so.2)
        FreeBSD-clibs-15.0 (libgcc_s.so.1)
$ pkg info -d FreeBSD-acct-15.0
FreeBSD-acct-15.0:
        FreeBSD-clibs-15.0 (libc++.so.1)
        FreeBSD-clibs-15.0 (libc.so.7)
        FreeBSD-clibs-15.0 (libcxxrt.so.1)
        FreeBSD-clibs-15.0 (libgcc_s.so.1)
        FreeBSD-clibs-15.0 (libm.so.5)
        FreeBSD-runtime-15.0p1 (libxo.so.0)

Nirgends etwas von gcc12-devel zu finden, also keine Ahnung wo das bei dir her kommt :/
 
Kannst Du mir bitte schreiben, wie Du das genau installierst. Ich mache das mit Environment und pkgbase und --jail. Also genau:

Python:
env["ROOTPASS_ENC"] = ROOTPASS_ENC
env["nonInteractive"] = "YES"
env["BSDINSTALL_CHROOT"] = ROOT_PATH

run(["bsdinstall", "pkgbase", "--jail"], env=env)

Das war vorher für die alte Installationsvariante. Vielleicht mache ich da etwas falsch. Und wie kann man die Pakete vorauswählen.

Interessanter Weise ist das Paket FreeBSD-libexecinfo bei der gcc12-devel Version vom 7.1. und bei der gcc12-devel-losen Version vom 8.1. Der Rest von pkg info ist gleich.
 
bsdinstall jail /zroot/jails/test, in dem Dialog dann "pkgbase" und einmal ohne irgendein Set auszuwählen/einmal mit "base-jail" ausgewählt.
 
Die Frage versteh ich nicht, wie willst du das denn sonst installieren?
Aus den Sourcen baue ich mir keine Jails und manuell wollte ich mir die Installation auch nicht antun.
 
Ich habe die Lösung schon gefunden. Man kann das Jail mittels pkg bauen.
Code:
export ROOT_PATH=/jails/xyz
mkdir -p ${ROOT_PATH}/usr/share/keys
cp -R /usr/share/keys/pkg  ${ROOT_PATH}/usr/share/keys/
cp -R /usr/share/keys/pkgbase-15 ${ROOT_PATH}/usr/share/keys/
pkg -r $ROOT_PATH install -y FreeBSD-set-minimal-jail

echo $ROOTPASS_ENCODED | pw -R $ROOT_PATH usermod root -H 0

Wenn man noch PKG_CACHEDIR setzt, dann werden die Pakete auch nicht andauernd aus dem Internet geholt.
 
Zurück
Oben