running ldd under fakechroot (we are building generic initrds in one of our packages where we have this setup in use) ldd returns a wrong library path (/lib64) instead of the actual path it returns under normal chroot conditions (/lib) on arm64:
running lld under fakechroot inside a build chroot:
running ldd under fakechroot (we are building generic initrds in one of our packages where we have this setup in use) ldd returns a wrong library path (/lib64) instead of the actual path it returns under normal chroot conditions (/lib) on arm64:
running lld under fakechroot inside a build chroot:
root@localhost:/# fakechroot chroot initramfs- tools-ubuntu- core-0. 7.20/build ldd /usr/lib/ initramfs- tools/bin/ wait-for- root 0000) aarch64- linux-gnu/ fakechroot/ libfakechroot. so (0x000000000000 0000) linux-gnu/ libudev. so.1 (0x000000000000 0000) linux-gnu/ libpthread. so.0 (0x000000000000 0000) linux-gnu/ libc.so. 6 (0x000000000000 0000) ld-linux- aarch64. so.1 (0x000000000000 0000)
linux-vdso.so.1 => (0x000000000000
libfakechroot.so => /usr/lib/
libudev.so.1 => /lib/aarch64-
libpthread.so.0 => /lib/aarch64-
libc.so.6 => /lib/aarch64-
/lib64/
running ldd directly in the chroot:
root@localhost:/# ldd /usr/lib/ initramfs- tools/bin/ wait-for- root d000) linux-gnu/ libudev. so.1 (0x0000007f9cec 5000) linux-gnu/ libc.so. 6 (0x0000007f9cd7 c000) linux-aarch64. so.1 (0x0000005591a1 5000) linux-gnu/ libpthread. so.0 (0x0000007f9cd5 0000)
linux-vdso.so.1 => (0x0000007f9cef
libudev.so.1 => /lib/aarch64-
libc.so.6 => /lib/aarch64-
/lib/ld-
libpthread.so.0 => /lib/aarch64-
root@localhost:/#
since there is no /lib64 directory at all on arm64 the copy_exec call from update-initrmfs fails in this case.