The problem is in line 122: 122:if set -o pipefail 2> /dev/null; then When dash hits the unknown pipefail option, it prints a diagnostic (which is suppressed of course) and then exits. This appears to be well within the rights of a compliant shell <http://www.opengroup.org/onlinepubs/009695399/utilities/xcu_chap02.html#tag_02_08_01>, though it's arguable whether the specific case of "set -o foo" is covered (especially since the table entries aren't exactly explicit about their meaning). Anyway, I mean to contact dash about this aswell but I didn't find a mailing list or bug database - only got as far as here tonight. As an aside, ldd also uses bash style $"" strings all over the place despite claiming to be bourne compatible via #!/bin/sh (of course this still works in dash you just get random $ signs in the output).
Then don't use dash. bash is the only supported shell.
Created attachment 1342 [details] Fix ldd to rely on its proper interpreter Works for me, so long as ldd stops claiming to be POSIX compatible.
Do you really think it is appropriate for the C runtime library to dictate which shells need to be installed? That kind of dependency seems very backwards. Note that one effect of this decision is to make ldd worthless on a busybox system.
Anyway, I have a much shorter, much cleaner patch: # environments where the executed program might not have permissions # to write to the console/tty. But only bash 3.x supports the pipefail # option, and we don't bother to handle the case for older bash versions. -if set -o pipefail 2> /dev/null; then +if (set -o pipefail) 2> /dev/null; then + set -o pipefail try_trace() { eval $add_env '"$@"' | cat }
Stop reopening. bash is the only supported shell. Maintain your own changes if you must but stop burdening others.
Just FYI -- I've never before reopened this bug. If you are finding that the bug keeps being opened, then it is something that a lot of your users care about, not the same user bugging you continually.
This is stupid.
See #c5.
i agree, that the assumption /bin/sh is bash continues to be deemed correct IS incredibly stupid. "all the world's a vax" -> "all the shs are bash". if you don't want to support other shells, that is FINE and understandable. just ask the kernel for what you actually want, /bin/bash.
Reopening, with a patch on the way to the mailing list.
. *** This bug has been marked as a duplicate of bug 832 ***
*** Bug 260998 has been marked as a duplicate of this bug. *** Seen from the domain http://volichat.com Page where seen: http://volichat.com/adult-chat-rooms Marked for reference. Resolved as fixed @bugzilla.