host-systemd may auto-detect host OpenSSL, then fail at rootfs packaging due to OpenSSL symbol mismatch (OPENSSL_3.4.0 not found)
### Check-list
- [x] I did not find the issue in the existing issues
- [x] I can reproduce the issue with unmodified Buildroot from [this repository](https://gitlab.com/buildroot.org/buildroot), not from a fork somewhere else
- [x] I can reproduce the issue on the latest commit of the branch I'm using:
- [ ] master
- [x] stable (i.e. 2024.02.09 - please specify)
- [ ] LTS (i.e. 20NN.02.x - please specify)
- [x] I can reproduce the issue after running `make clean; make`
- [x] I attached the full build log file (e.g. `make 2>&1 |tee build.log`)
- [ ] I attached a **minimal** defconfig file that can reproduce the issue (`make BR2_DEFCONFIG=$(pwd)/issue_defconfig savedefconfig`)
- [ ] I also attached the configuration for kconfig-based packages that are enabled (and necessary to reproduce the issue), most notably:
- [ ] busybox
- [ ] linux
- [ ] uclibc
- [ ] uboot
- [ ] …
What I did
-
Buildroot commit sha1: get this with
git describe HEAD -
Distribution of the build machine: get this with
NAMEandVERSIONfrom/etc/os-release
Here, describe what you did:
-
any special environment variables: CC, CXX, TARGET, CROSS_COMPILE, etc…
-
the commands you ran:
$ make rsync -a --hard-links /home/build/PlatformDev/buildroot/output/per-package/tzdata/target/ /home/build/PlatformDev/buildroot/output/target rsync -a --hard-links /home/build/PlatformDev/buildroot/output/per-package/uboot-tools/target/ /home/build/PlatformDev/buildroot/output/target rsync -a --hard-links /home/build/PlatformDev/buildroot/output/per-package/udev/target/ /home/build/PlatformDev/buildroot/output/target rsync -a --hard-links /home/build/PlatformDev/buildroot/output/per-package/unzip/target/ /home/build/PlatformDev/buildroot/output/target rsync -a --hard-links /home/build/PlatformDev/buildroot/output/per-package/usbutils/target/ /home/build/PlatformDev/buildroot/output/target rsync -a --hard-links /home/build/PlatformDev/buildroot/output/per-package/util-linux/target/ /home/build/PlatformDev/buildroot/output/target rsync -a --hard-links /home/build/PlatformDev/buildroot/output/per-package/util-linux-libs/target/ /home/build/PlatformDev/buildroot/output/target rsync -a --hard-links /home/build/PlatformDev/buildroot/output/per-package/valgrind/target/ /home/build/PlatformDev/buildroot/output/target rsync -a --hard-links /home/build/PlatformDev/buildroot/output/per-package/vim/target/ /home/build/PlatformDev/buildroot/output/target rsync -a --hard-links /home/build/PlatformDev/buildroot/output/per-package/which/target/ /home/build/PlatformDev/buildroot/output/target rsync -a --hard-links /home/build/PlatformDev/buildroot/output/per-package/wireguard-tools/target/ /home/build/PlatformDev/buildroot/output/target rsync -a --hard-links /home/build/PlatformDev/buildroot/output/per-package/xfsprogs/target/ /home/build/PlatformDev/buildroot/output/target rsync -a --hard-links /home/build/PlatformDev/buildroot/output/per-package/xz/target/ /home/build/PlatformDev/buildroot/output/target rsync -a --hard-links /home/build/PlatformDev/buildroot/output/per-package/zip/target/ /home/build/PlatformDev/buildroot/output/target rsync -a --hard-links /home/build/PlatformDev/buildroot/output/per-package/zlib/target/ /home/build/PlatformDev/buildroot/output/target mkdir -p /home/build/PlatformDev/buildroot/output/host/etc/meson sed -e "s%@TARGET_CFLAGS@%'-D_LARGEFILE_SOURCE', '-D_LARGEFILE64_SOURCE', '-D_FILE_OFFSET_BITS=64', '-Os', '-g0', '-D_FORTIFY_SOURCE=1'@PKG_TARGET_CFLAGS@%g" -e "s%@TARGET_LDFLAGS@%@PKG_TARGET_LDFLAGS@%g" -e "s%@TARGET_CXXFLAGS@%'-D_LARGEFILE_SOURCE', '-D_LARGEFILE64_SOURCE', '-D_FILE_OFFSET_BITS=64', '-Os', '-g0', '-D_FORTIFY_SOURCE=1'@PKG_TARGET_CXXFLAGS@%g" -e "s%@TARGET_FCFLAGS@%'-Os', '-g0'@PKG_TARGET_FCFLAGS@%g" -e "s%@TARGET_CC@%/home/build/PlatformDev/buildroot/output/host/bin/aarch64-rocky-linux-gnu-gcc%g" -e "s%@TARGET_CXX@%/home/build/PlatformDev/buildroot/output/host/bin/aarch64-rocky-linux-gnu-g++%g" -e "s%@TARGET_AR@%/home/build/PlatformDev/buildroot/output/host/bin/aarch64-rocky-linux-gnu-gcc-ar%g" -e "s%@TARGET_FC@%/bin/false%g" -e "s%@TARGET_STRIP@%/home/build/PlatformDev/buildroot/output/host/bin/aarch64-rocky-linux-gnu-strip%g" -e "s%@TARGET_ARCH@%aarch64%g" -e "s%@TARGET_CPU@%cortex-a72%g" -e "s%@TARGET_ENDIAN@%little%g" -e "s%@TARGET_FCFLAGS@%%g" -e "s%@TARGET_CFLAGS@%%g" -e "s%@TARGET_LDFLAGS@%%g" -e "s%@TARGET_CXXFLAGS@%%g" -e "s%@BR2_CMAKE@%/home/build/PlatformDev/buildroot/output/host/bin/cmake%g" -e "s%@PKGCONF_HOST_BINARY@%/home/build/PlatformDev/buildroot/output/host/bin/pkgconf%g" -e "s%@HOST_DIR@%/home/build/PlatformDev/buildroot/output/host%g" -e "s%@STAGING_DIR@%/home/build/PlatformDev/buildroot/output/host/aarch64-rocky-linux-gnu/sysroot%g" -e "s%@STATIC@%false%g" /home/build/PlatformDev/buildroot/support/misc/cross-compilation.conf.in > /home/build/PlatformDev/buildroot/output/host/etc/meson/cross-compilation.conf.in sed -e "s%@TARGET_CC@%/home/build/PlatformDev/buildroot/output/host/bin/aarch64-rocky-linux-gnu-gcc%g" -e "s%@TARGET_CXX@%/home/build/PlatformDev/buildroot/output/host/bin/aarch64-rocky-linux-gnu-g++%g" -e "s%@TARGET_AR@%/home/build/PlatformDev/buildroot/output/host/bin/aarch64-rocky-linux-gnu-gcc-ar%g" -e "s%@TARGET_FC@%/bin/false%g" -e "s%@TARGET_STRIP@%/home/build/PlatformDev/buildroot/output/host/bin/aarch64-rocky-linux-gnu-strip%g" -e "s%@TARGET_ARCH@%aarch64%g" -e "s%@TARGET_CPU@%cortex-a72%g" -e "s%@TARGET_ENDIAN@%little%g" -e "s%@TARGET_FCFLAGS@%'-Os', '-g0'%g" -e "s%@TARGET_CFLAGS@%'-D_LARGEFILE_SOURCE', '-D_LARGEFILE64_SOURCE', '-D_FILE_OFFSET_BITS=64', '-Os', '-g0', '-D_FORTIFY_SOURCE=1'%g" -e "s%@TARGET_LDFLAGS@%%g" -e "s%@TARGET_CXXFLAGS@%'-D_LARGEFILE_SOURCE', '-D_LARGEFILE64_SOURCE', '-D_FILE_OFFSET_BITS=64', '-Os', '-g0', '-D_FORTIFY_SOURCE=1'%g" -e "s%@BR2_CMAKE@%/home/build/PlatformDev/buildroot/output/host/bin/cmake%g" -e "s%@PKGCONF_HOST_BINARY@%/home/build/PlatformDev/buildroot/output/host/bin/pkgconf%g" -e "s%@HOST_DIR@%/home/build/PlatformDev/buildroot/output/host%g" -e "s%@STAGING_DIR@%/home/build/PlatformDev/buildroot/output/host/aarch64-rocky-linux-gnu/sysroot%g" -e "s%@STATIC@%false%g" /home/build/PlatformDev/buildroot/support/misc/cross-compilation.conf.in > /home/build/PlatformDev/buildroot/output/host/etc/meson/cross-compilation.conf grep -qsE '^/bin/bash$' /home/build/PlatformDev/buildroot/output/target/etc/shells || echo "/bin/bash" >> /home/build/PlatformDev/buildroot/output/target/etc/shells rm -f /home/build/PlatformDev/buildroot/output/target/usr/share/glib-2.0/schemas/*.xml /home/build/PlatformDev/buildroot/output/target/usr/share/glib-2.0/schemas/*.dtd /home/build/PlatformDev/buildroot/output/host/bin/glib-compile-schemas /home/build/PlatformDev/buildroot/output/host/aarch64-rocky-linux-gnu/sysroot/usr/share/glib-2.0/schemas --targetdir=/home/build/PlatformDev/buildroot/output/target/usr/share/glib-2.0/schemas No schema files found: doing nothing. PYTHONPATH="/home/build/PlatformDev/buildroot/output/host/aarch64-rocky-linux-gnu/sysroot/opt/usr/lib/python3.9/" /home/build/PlatformDev/buildroot/output/host/bin/python3.9 /home/build/PlatformDev/buildroot/output/build/python3-3.9.9/Lib/compileall.py -q -s /home/build/PlatformDev/buildroot/output/target -p / /home/build/PlatformDev/buildroot/output/target/opt/usr/lib/python3.9 find /home/build/PlatformDev/buildroot/output/target/opt/usr/lib/python3.9 -name '*.opt-1.pyc' -print0 -o -name '*.opt-2.pyc' -print0 | xargs -0 --no-run-if-empty rm -f mkdir -p /home/build/PlatformDev/buildroot/output/target/etc echo "sk-linux" > /home/build/PlatformDev/buildroot/output/target/etc/hostname /usr/bin/sed -i -e '$a \127.0.1.1\tsk-linux' -e '/^127.0.1.1/d' /home/build/PlatformDev/buildroot/output/target/etc/hosts mkdir -p /home/build/PlatformDev/buildroot/output/target/etc echo "Kylin Linux Advanced Server" > /home/build/PlatformDev/buildroot/output/target/etc/issue /usr/bin/sed -i -e s,^root:[^:]*:,root:"`/home/build/PlatformDev/buildroot/output/host/bin/mkpasswd -m "sha-512" "password"`":, /home/build/PlatformDev/buildroot/output/target/etc/shadow grep -qsE '^/bin/sh$' /home/build/PlatformDev/buildroot/output/target/etc/shells || echo "/bin/sh" >> /home/build/PlatformDev/buildroot/output/target/etc/shells ln -sf bash /home/build/PlatformDev/buildroot/output/target/bin/sh /usr/bin/sed -i -e '/^root:/s,[^/]*$,bash,' /home/build/PlatformDev/buildroot/output/target/etc/passwd /usr/bin/sed -i -e '/^passwd:/ {/systemd/! s/$/ systemd/}' -e '/^group:/ {/systemd/! s/$/ [SUCCESS=merge] systemd/}' -e '/^shadow:/ {/systemd/! s/$/ systemd/}' -e '/^gshadow:/ {/systemd/! s/$/ systemd/}' /home/build/PlatformDev/buildroot/output/target/etc/nsswitch.conf printf '%s\n' locale-archive > /home/build/PlatformDev/buildroot/output/build/locales.nopurge for dir in /home/build/PlatformDev/buildroot/output/target/usr/share/locale /home/build/PlatformDev/buildroot/output/target/usr/share/X11/locale /home/build/PlatformDev/buildroot/output/target/usr/lib/locale; do if [ ! -d $dir ]; then continue; fi; for langdir in $dir/*; do if [ -e "${langdir}" ]; then grep -qx "${langdir##*/}" /home/build/PlatformDev/buildroot/output/build/locales.nopurge || rm -rf $langdir; fi done; done if [ -d /home/build/PlatformDev/buildroot/output/target/usr/share/X11/locale ]; then for lang in ; do if [ -f /home/build/PlatformDev/buildroot/output/target/usr/share/X11/locale/$lang/XLC_LOCALE ]; then echo "$lang/XLC_LOCALE: $lang"; fi done > /home/build/PlatformDev/buildroot/output/target/usr/share/X11/locale/locale.dir; fi rm -rf /home/build/PlatformDev/buildroot/output/target/usr/include /home/build/PlatformDev/buildroot/output/target/usr/share/aclocal \ /home/build/PlatformDev/buildroot/output/target/usr/lib/pkgconfig /home/build/PlatformDev/buildroot/output/target/usr/share/pkgconfig \ /home/build/PlatformDev/buildroot/output/target/usr/lib/cmake /home/build/PlatformDev/buildroot/output/target/usr/share/cmake \ /home/build/PlatformDev/buildroot/output/target/usr/lib/rpm /home/build/PlatformDev/buildroot/output/target/usr/doc find /home/build/PlatformDev/buildroot/output/target/usr/{lib,share}/ -name '*.cmake' -print0 | xargs -0 rm -f find /home/build/PlatformDev/buildroot/output/target/lib/ /home/build/PlatformDev/buildroot/output/target/usr/lib/ /home/build/PlatformDev/buildroot/output/target/usr/libexec/ \ \( -name '*.a' -o -name '*.la' -o -name '*.prl' \) -print0 | xargs -0 rm -f rm -rf /home/build/PlatformDev/buildroot/output/target/usr/share/zsh rm -rf /home/build/PlatformDev/buildroot/output/target/usr/man /home/build/PlatformDev/buildroot/output/target/usr/share/man rm -rf /home/build/PlatformDev/buildroot/output/target/usr/info /home/build/PlatformDev/buildroot/output/target/usr/share/info rm -rf /home/build/PlatformDev/buildroot/output/target/usr/doc /home/build/PlatformDev/buildroot/output/target/usr/share/doc rm -rf /home/build/PlatformDev/buildroot/output/target/usr/share/gtk-doc rmdir /home/build/PlatformDev/buildroot/output/target/usr/share 2>/dev/null || true rm -rf /home/build/PlatformDev/buildroot/output/target/lib/debug /home/build/PlatformDev/buildroot/output/target/usr/lib/debug find /home/build/PlatformDev/buildroot/output/target -type f \( -perm /111 -o -name '*.so*' \) -not \( -name 'libpthread*.so*' -o -name 'ld-*.so*' -o -name '*.ko' \) -print0 | xargs -0 /home/build/PlatformDev/buildroot/output/host/bin/aarch64-rocky-linux-gnu-strip --remove-section=.comment --remove-section=.note 2>/dev/null || true find /home/build/PlatformDev/buildroot/output/target \( -name 'ld-*.so*' -o -name 'libpthread*.so*' \) -print0 | xargs -0 -r /home/build/PlatformDev/buildroot/output/host/bin/aarch64-rocky-linux-gnu-strip --remove-section=.comment --remove-section=.note --strip-debug 2>/dev/null || true test -f /home/build/PlatformDev/buildroot/output/target/etc/ld.so.conf && \ { echo "ERROR: we shouldn't have a /etc/ld.so.conf file"; exit 1; } || true test -d /home/build/PlatformDev/buildroot/output/target/etc/ld.so.conf.d && \ { echo "ERROR: we shouldn't have a /etc/ld.so.conf.d directory"; exit 1; } || true mkdir -p /home/build/PlatformDev/buildroot/output/target/etc ( \ echo "ROOTFS_BR_VERSION=\"Build-gf3f175af-dirty\"" \ ) > /home/build/PlatformDev/buildroot/output/target/usr/lib/os-release ln -sf ../usr/lib/os-release /home/build/PlatformDev/buildroot/output/target/etc >>> Sanitizing RPATH in target tree PARALLEL_JOBS=49 \ PER_PACKAGE_DIR=/home/build/PlatformDev/buildroot/output/per-package \ /home/build/PlatformDev/buildroot/support/scripts/fix-rpath target >>> Sanity check in overlay board/my-aarch64/rootfs-overlay/ >>> Copying overlay board/my-aarch64/rootfs-overlay/ touch /home/build/PlatformDev/buildroot/output/target/usr >>> Generating root filesystems common tables rm -rf /home/build/PlatformDev/buildroot/output/build/buildroot-fs mkdir -p /home/build/PlatformDev/buildroot/output/build/buildroot-fs printf ' chrony -1 chrony -1 * /run/chrony - - Time daemon\n dbus -1 dbus -1 * /run/dbus - dbus DBus messagebus user\n frr -1 frr -1 * /var/run/frr - frrvty FRR user priv\n # 系统将默认创建mysql用户,修改mysql:mysql的home到/opt/var/lib/mysql\n mysql -1 mysql -1 * /opt/var/lib/mysql - - MySQL Server\n sshd -1 sshd -1 * /var/empty - - SSH drop priv user\n redis -1 redis -1 * /opt/var/lib/redis /bin/false - Redis Server\n # udev user groups\n - - render -1 * - - - DRI rendering nodes\n # systemd user groups\n - - systemd-journal -1 * - - - Journal\n \n \n \n systemd-network -1 systemd-network -1 * - - - systemd Network Management\n \n \n - - input -1 * - - - Input device group\n - - kvm -1 * - - - kvm nodes\n - - sgx -1 * - - - SGX device nodes\n\n' >> /home/build/PlatformDev/buildroot/output/build/buildroot-fs/full_users_table.txt printf ' /var/lib/chrony d 755 chrony chrony - - - - -\n /usr/libexec/dbus-daemon-launch-helper f 4750 0 dbus - - - - -\n /etc/frr/daemons f 640 frr frr - - - - -\n /etc/frr/daemons.conf f 640 frr frr - - - - -\n /etc/frr/frr.conf f 640 frr frr - - - - -\n /etc/frr/vtysh.conf f 640 frr frrvty - - - - -\n /etc/frr/support_bundle_commands.conf f 640 frr frr\n \n \n /bin/ping f 4755 0 0 - - - - -\n /opt/var/lib/nginx d 755 33 33 - - - - -\n /var/empty d 755 root root - - - - -\n /usr/bin/chage f 4755 0 0 - - - - -\n /usr/bin/chfn f 4755 0 0 - - - - -\n /usr/bin/chsh f 4755 0 0 - - - - -\n /usr/bin/expiry f 4755 0 0 - - - - -\n /usr/bin/gpasswd f 4755 0 0 - - - - -\n /usr/bin/newgrp f 4755 0 0 - - - - -\n /usr/bin/passwd f 4755 0 0 - - - - -\n /usr/sbin/chgpasswd f 4755 0 0 - - - - -\n /usr/sbin/chpasswd f 4755 0 0 - - - - -\n /usr/sbin/groupadd f 4755 0 0 - - - - -\n /usr/sbin/groupdel f 4755 0 0 - - - - -\n /usr/sbin/groupmod f 4755 0 0 - - - - -\n /usr/sbin/newusers f 4755 0 0 - - - - -\n /usr/sbin/useradd f 4755 0 0 - - - - -\n /usr/sbin/userdel f 4755 0 0 - - - - -\n /usr/sbin/usermod f 4755 0 0 - - - - -\n \n /boot d 700 0 0 - - - - -\n /var/spool d 755 0 0 - - - - -\n /var/lib d 755 0 0 - - - - -\n /var/lib/private d 700 0 0 - - - - -\n /var/log/private d 700 0 0 - - - - -\n /var/cache/private d 700 0 0 - - - - -\n /var/log/journal d 2755 root systemd-journal - - - - -\n /var/lib/systemd/linger d 755 0 0 - - - - -\n \n \n \n \n \n\n' > /home/build/PlatformDev/buildroot/output/build/buildroot-fs/full_devices_table.txt cat system/device_table.txt >> /home/build/PlatformDev/buildroot/output/build/buildroot-fs/full_devices_table.txt >>> Generating filesystem image rootfs.cpio mkdir -p /home/build/PlatformDev/buildroot/output/images rm -rf /home/build/PlatformDev/buildroot/output/build/buildroot-fs/cpio mkdir -p /home/build/PlatformDev/buildroot/output/build/buildroot-fs/cpio rsync -auH --exclude=/THIS_IS_NOT_YOUR_ROOT_FILESYSTEM /home/build/PlatformDev/buildroot/output/target/ /home/build/PlatformDev/buildroot/output/build/buildroot-fs/cpio/target echo '#!/bin/sh' > /home/build/PlatformDev/buildroot/output/build/buildroot-fs/cpio/fakeroot echo "set -e" >> /home/build/PlatformDev/buildroot/output/build/buildroot-fs/cpio/fakeroot echo "chown -h -R 0:0 /home/build/PlatformDev/buildroot/output/build/buildroot-fs/cpio/target" >> /home/build/PlatformDev/buildroot/output/build/buildroot-fs/cpio/fakeroot PATH="/home/build/PlatformDev/buildroot/output/host/bin:/home/build/PlatformDev/buildroot/output/host/sbin:/root/.vscode-server/data/User/globalStorage/github.copilot-chat/debugCommand:/root/.vscode-server/data/User/globalStorage/github.copilot-chat/copilotCli:/root/.vscode-server/cli/servers/Stable-072586267e68ece9a47aa43f8c108e0dcbf44622/server/bin/remote-cli:/root/.local/bin:/root/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin" /home/build/PlatformDev/buildroot/support/scripts/mkusers /home/build/PlatformDev/buildroot/output/build/buildroot-fs/full_users_table.txt /home/build/PlatformDev/buildroot/output/build/buildroot-fs/cpio/target >> /home/build/PlatformDev/buildroot/output/build/buildroot-fs/cpio/fakeroot echo "/home/build/PlatformDev/buildroot/output/host/bin/makedevs -d /home/build/PlatformDev/buildroot/output/build/buildroot-fs/full_devices_table.txt /home/build/PlatformDev/buildroot/output/build/buildroot-fs/cpio/target" >> /home/build/PlatformDev/buildroot/output/build/buildroot-fs/cpio/fakeroot printf ' HOST_SYSTEMD_TMPFILES=/home/build/PlatformDev/buildroot/output/host/bin/systemd-tmpfiles package/skeleton-init-systemd//fakeroot_tmpfiles.sh /home/build/PlatformDev/buildroot/output/build/buildroot-fs/cpio/target\n' >> /home/build/PlatformDev/buildroot/output/build/buildroot-fs/cpio/fakeroot printf ' for cfile in `find /home/build/PlatformDev/buildroot/output/build/buildroot-fs/cpio/target/usr/lib/systemd/catalog -name '\''*.*.catalog'\''`; do basename=${cfile##*/}; basename=${basename%%.catalog}; langext=${basename#*.}; [ "$langext" = "${basename}" ] && continue; expr '\'''\'' : ".*\\b${langext}\\b" >/dev/null && continue; rm -f "$cfile"; done\n' >> /home/build/PlatformDev/buildroot/output/build/buildroot-fs/cpio/fakeroot printf ' rm -rf /home/build/PlatformDev/buildroot/output/build/buildroot-fs/cpio/target/usr/lib/systemd/catalog /home/build/PlatformDev/buildroot/output/build/buildroot-fs/cpio/target/usr/lib/systemd/system/systemd-journal-catalog-update.service /home/build/PlatformDev/buildroot/output/build/buildroot-fs/cpio/target/usr/lib/systemd/system/*/systemd-journal-catalog-update.service\n' >> /home/build/PlatformDev/buildroot/output/build/buildroot-fs/cpio/fakeroot printf ' /home/build/PlatformDev/buildroot/output/host/bin/systemctl --root=/home/build/PlatformDev/buildroot/output/build/buildroot-fs/cpio/target preset-all\n' >> /home/build/PlatformDev/buildroot/output/build/buildroot-fs/cpio/fakeroot printf ' rm -rf /home/build/PlatformDev/buildroot/output/build/buildroot-fs/cpio/target/usr/lib/udev/hwdb.d/ /home/build/PlatformDev/buildroot/output/build/buildroot-fs/cpio/target/etc/udev/hwdb.d/\n' >> /home/build/PlatformDev/buildroot/output/build/buildroot-fs/cpio/fakeroot printf ' if [ ! -e /home/build/PlatformDev/buildroot/output/build/buildroot-fs/cpio/target/init ]; then /usr/bin/install -m 0755 fs/cpio/init /home/build/PlatformDev/buildroot/output/build/buildroot-fs/cpio/target/init; fi\n mkdir -p /home/build/PlatformDev/buildroot/output/build/buildroot-fs/cpio/target/dev\n mknod -m 0622 /home/build/PlatformDev/buildroot/output/build/buildroot-fs/cpio/target/dev/console c 5 1\n' >> /home/build/PlatformDev/buildroot/output/build/buildroot-fs/cpio/fakeroot echo "find /home/build/PlatformDev/buildroot/output/build/buildroot-fs/cpio/target/run/ -mindepth 1 -prune -print0 | xargs -0r rm -rf --" >> /home/build/PlatformDev/buildroot/output/build/buildroot-fs/cpio/fakeroot echo "find /home/build/PlatformDev/buildroot/output/build/buildroot-fs/cpio/target/tmp/ -mindepth 1 -prune -print0 | xargs -0r rm -rf --" >> /home/build/PlatformDev/buildroot/output/build/buildroot-fs/cpio/fakeroot printf ' \n' >> /home/build/PlatformDev/buildroot/output/build/buildroot-fs/cpio/fakeroot printf ' \n' >> /home/build/PlatformDev/buildroot/output/build/buildroot-fs/cpio/fakeroot printf ' cd /home/build/PlatformDev/buildroot/output/build/buildroot-fs/cpio/target && find . | LC_ALL=C sort | cpio --quiet -o -H newc > /home/build/PlatformDev/buildroot/output/images/rootfs.cpio\n' >> /home/build/PlatformDev/buildroot/output/build/buildroot-fs/cpio/fakeroot chmod a+x /home/build/PlatformDev/buildroot/output/build/buildroot-fs/cpio/fakeroot PATH="/home/build/PlatformDev/buildroot/output/host/bin:/home/build/PlatformDev/buildroot/output/host/sbin:/root/.vscode-server/data/User/globalStorage/github.copilot-chat/debugCommand:/root/.vscode-server/data/User/globalStorage/github.copilot-chat/copilotCli:/root/.vscode-server/cli/servers/Stable-072586267e68ece9a47aa43f8c108e0dcbf44622/server/bin/remote-cli:/root/.local/bin:/root/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin" FAKEROOTDONTTRYCHOWN=1 /home/build/PlatformDev/buildroot/output/host/bin/fakeroot -- /home/build/PlatformDev/buildroot/output/build/buildroot-fs/cpio/fakeroot rootdir=/home/build/PlatformDev/buildroot/output/build/buildroot-fs/cpio/target table='/home/build/PlatformDev/buildroot/output/build/buildroot-fs/full_devices_table.txt' /home/build/PlatformDev/buildroot/output/host/bin/systemd-tmpfiles: /home/build/PlatformDev/buildroot/output/host/lib/libcrypto.so.3: version `OPENSSL_3.4.0' not found (required by /home/build/PlatformDev/buildroot/output/host/bin/../lib/systemd/libsystemd-shared-254.so) /home/build/PlatformDev/buildroot/output/host/bin/systemd-tmpfiles: /home/build/PlatformDev/buildroot/output/host/lib/libcrypto.so.3: version `OPENSSL_3.4.0' not found (required by /home/build/PlatformDev/buildroot/output/host/bin/../lib/systemd/libsystemd-shared-254.so) make: *** [fs/cpio/cpio.mk:128: /home/build/PlatformDev/buildroot/output/images/rootfs.cpio] Error 1 [root@Builder buildroot]# uname -a Linux Builder 5.14.0-284.11.1.el9_2.x86_64 #1 SMP PREEMPT_DYNAMIC Tue May 9 17:09:15 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux -
anything else that you might think is important…
Description
I’m hitting a reproducible failure at the final rootfs packaging stage (fakeroot / cpio generation), even though target package builds complete successfully.
The failure happens when systemd-tmpfiles is executed during rootfs generation:
/output/host/bin/systemd-tmpfiles: ... libcrypto.so.3: version 'OPENSSL_3.4.0' not found (required by .../libsystemd-shared-254.so)make: *** [fs/cpio/cpio.mk:128: .../rootfs.cpio] Error 1
I already attached the full make log.
Environment / context
-
A previous commit built successfully with the same defconfig.
Note: RockyLinux 9.2 defaults use libopenssl version 3.0.7, but the system recently updated the openssl version to 3.5.1.
-
Host OS OpenSSL:
3.5.1 -
Buildroot
libopensslpackage version:3.2.3
What I found
- During
host-systemdconfigure, Meson reports:
Run-time dependency openssl found: YES "3.5.1"
(detected from host system, not from a pinned Buildroot host dependency). -
host-systemdtools later run with RPATH pointing to Buildroot host libs (lib). - At runtime,
libsystemd-shared-254.sorequiresOPENSSL_3.4.0, but libcrypto.so.3 only provides symbols up to OpenSSL 3.2.x. - This causes
systemd-tmpfilesto fail during rootfs generation.
Probable root cause
host-systemd can auto-detect and link against host OpenSSL during configure, but runtime resolution is forced to Buildroot host libraries, creating an ABI/symbol-version mismatch.
Expected behavior
host-systemd should be fully reproducible and not depend on host OpenSSL autodetection.
Possible fix directions
- Disable OpenSSL features for
host-systemdexplicitly (e.g. host variant only), or - Make
host-systemdexplicitly depend on and link against a consistent Buildroot host OpenSSL (host-openssl), avoiding host contamination.
Workaround
Cleaning and rebuilding host components (host-systemd, host OpenSSL-related packages) can temporarily recover, but this does not solve the underlying reproducibility issue.