http://www.linuxfromscratch.org/lfs/view/development/chapter06/glibc.html As documented here, glibc's ldd fails silently on a non-bash shell. glibc should probably have a dependency on bash and/or change the ldd script from #!/bin/sh to #!/bin/bash so as to avoid confusion situations where /bin/sh is not /bin/bash.
or you fix ldd
It's a fairly terrifying script and I'd have to learn more bash that I do at the moment to sort it out. It seems the plot thickens and that if you don't have bash on your system glibc rewrites the script at compile time. The problem comes if you have /bin/bash but /bin/sh isn't /bin/bash. In the situation that the user has bash but it isn't the primary shell you should probably change /bin/sh to /bin/bash
"/bin/sh isnt bash" isnt something i can work with that LFS page contains no details dash fails, but that's a bug in dash and i've opened another one for that
I'd change this to resolved wontfix. Bash is a system package. So is glibc (which contains ldd). Bash technically depends on glibc for libdl, but doesn't have glibc as a dep in portage. The only way this is a Gentoo problem is if someone patched ldd so it now includes bash-specific code. Otherwise, how can Gentoo be held responsible for whatever the user points /usr/sh at? How can anything be enforced? I suppose the original suggested fix might be the answer, since bash is a system package.
i dug into this more and did some experimenting and the glibc configure script makes an attempt at locating /bin/bash but will detect /bin/sh instead due to the configure script using "BASH" as the variable which is set to /bin/sh when bash is invoked as /bin/sh i'll send a patch upstream and see what drepper says
my suggestions have been merged upstream ... this will be fixed in next release of glibc
Wow, good man. Impressive work!
*** Bug 182522 has been marked as a duplicate of this bug. ***
*** Bug 184025 has been marked as a duplicate of this bug. ***