Re: git: 99132daf6f70 - main - rc.d/ldconfig: Prepend rtld stdlib paths to ldconfig(32)_paths
- Reply: Jessica Clarke : "Re: git: 99132daf6f70 - main - rc.d/ldconfig: Prepend rtld stdlib paths to ldconfig(32)_paths"
- In reply to: Konstantin Belousov : "git: 99132daf6f70 - main - rc.d/ldconfig: Prepend rtld stdlib paths to ldconfig(32)_paths"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Thu, 16 Nov 2023 12:44:36 UTC
Moin-moin!
This cause some errors while running, at least on aarch64, host and poudriere jail
# service ldconfig restart
ELF ldconfig path: /lib /usr/lib /usr/lib/compat /usr/local/lib /usr/local/lib/compat/pkg /usr/local/lib/compat/pkg /usr/local/lib/e2fsprogs /usr/local/lib/mysql /usr/local/lib/perl5/5.38/mach/CORE /usr/local/llvm16/lib
ELF binary type "9" not known.
eval: /libexec/ld-elf32.so.1: Exec format error
32-bit compatibility ldconfig path: /usr/lib32
On 14.11.2023 02:39, Konstantin Belousov wrote:
> The branch main has been updated by kib:
>
> URL: https://cgit.FreeBSD.org/src/commit/?id=99132daf6f70cb0cc969c555d3612547fa3cf1db
>
> commit 99132daf6f70cb0cc969c555d3612547fa3cf1db
> Author: John W. O'Brien <john@saltant.com>
> AuthorDate: 2023-11-12 22:45:27 +0000
> Commit: Konstantin Belousov <kib@FreeBSD.org>
> CommitDate: 2023-11-13 23:39:17 +0000
>
> rc.d/ldconfig: Prepend rtld stdlib paths to ldconfig(32)_paths
>
> Ensure that ldconfig-managed elf and elf32 hints always include
> the standard library paths that are known independently to rtld.
>
> PR: 275031
> Reviewed by: kib
> MFC after: 2 weeks
> Sponsored by: Saltant Solutions LLC
> Differential Revision: https://reviews.freebsd.org/D42557
> ---
> libexec/rc/rc.d/ldconfig | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/libexec/rc/rc.d/ldconfig b/libexec/rc/rc.d/ldconfig
> index 178a8a987be4..ecbbca210ea0 100755
> --- a/libexec/rc/rc.d/ldconfig
> +++ b/libexec/rc/rc.d/ldconfig
> @@ -22,7 +22,7 @@ ldconfig_start()
> ldconfig=${ldconfig_command}
> checkyesno ldconfig_insecure && _ins="-i"
> if [ -x "${ldconfig_command}" ]; then
> - _LDC="/lib /usr/lib"
> + _LDC=$(/libexec/ld-elf.so.1 -v | sed -n -e '/^Default lib path /s///p' | tr : ' ')
> for i in ${ldconfig_local_dirs}; do
> if [ -d "${i}" ]; then
> _files=`find ${i} -type f`
> @@ -52,6 +52,9 @@ ldconfig_start()
> fi
> done
> _LDC=""
> + if [ -x /libexec/ld-elf32.so.1 ]; then
> + _LDC=$(/libexec/ld-elf32.so.1 -v | sed -n -e '/^Default lib path /s///p' | tr : ' ')
> + fi
> for i in ${ldconfig32_paths}; do
> if [ -r "${i}" ]; then
> _LDC="${_LDC} ${i}"
>
--
Sincerely,
Dima (fluffy@FreeBSD.org, https://t.me/FluffyBSD)
(desktop, kde, x11, office, ports-secteam)@FreeBSD team