[pkg-cryptsetup-devel] Bug#939766: cryptsetup-initramfs: Trying to boot linux-image-5.2.0-2-amd64 fails, linux-image-4.19.0-5-amd64 works.

Guillem Jover guillem at hadrons.org
Tue Jan 14 01:01:09 GMT 2020


Control: tags -1 - moreinfo

Hi!

On Mon, 2019-09-09 at 00:53:44 +0200, Alexander Brock wrote:
> I searched for clues why that libgcc_s.so.1 is not added and found the
> script:
> /usr/share/initramfs-tools/hooks/cryptroot
> 
> it contains the line:
> 
> LIBC_DIR="$(ldd /sbin/cryptsetup | sed -nr 's#.* =>
> (/lib.*)/libc\.so\.[0-9.-]+ \(0x[[:xdigit:]]+\)$#\1#p')"
> 
> but on my machine there is no /bin/libc.so.[0-9.-]+ instead it is in
> /usr/lib/x86_64-linux-gnu. Therefore $LIBC_DIR is empty which leads to
> the "find: ‘’: No such file or directory" error message in the log
> (https://paste.debian.net/1099530/)
> 
> Allowing any number of characters before the /lib fixes the problem:
> 
> LIBC_DIR="$(ldd /sbin/cryptsetup | sed -nr 's#.* =>
> (.*/lib.*)/libc\.so\.[0-9.-]+ \(0x[[:xdigit:]]+\)$#\1#p')"
> 
> I changed this and now the 5.2 kernel boots again. I made a merge
> request:
> https://salsa.debian.org/cryptsetup-team/cryptsetup/merge_requests/10

I've just hit the same problem, but I don't think this diagnostic is
correct?

The problem I've got is that I upgraded to gcc-10 from experimental,
which pulled in libgcc1-s1 and libgcc1 (that I later removed), neither
of which install libgcc_s.so.1 under /lib/$MULTIARCH anymore. The first
installs the shared library under /usr/lib/$MULTIARCH, the latter
under /lib/ (although that one might be in error, as there's an empty
multiarch dir under /lib in that package), so that logic does not find
it.

IMO the assumption that libgcc will be located in the same directory
as libc is incorrect, first because it comes from a different source
package, and second because nothing says they need to be on the same
directory. :)

Thanks,
Guillem



More information about the pkg-cryptsetup-devel mailing list