Reproducible sig 11 with bash2

Garance A Drosihn drosih at rpi.edu
Thu Apr 7 11:33:30 PDT 2005


At 4:09 PM -0400 4/6/05, Mike Jakubik wrote:
>On Wed, April 6, 2005 3:32 pm, Kris Kennaway said:
>
>>  You need to recompile with -ggdb to get line numbers.  Please see the
>>  developers' handbook.  You may also want to raise it with the bash
>>  developers, since it may be a bash bug and not a freebsd bug.
>
>Well, here is a strange result, so i dont think this is a bash bug. I
>recompiled and reinstalled /usr/src/contrib/libreadline,
>/usr/src/gnu/lib/libreadline/ (why are there two?), and
>/usr/ports/shells/bash2 with these CFLAGs "-O -pipe -ggdb" and I can
>no longer reproduce the crash. Could this be a bug in libreadline/gcc
>due to over optimization? (default cflags have -O2).

I have already discussed this with MikeJ via private emails, but
I'll repeat some of those observations for the mailing list:

The problem *is* a mismatch between the version of readline in bash2,
and the version which is in the base system.  The bash2 port uses
readline from the base system, but it also uses an include file
from it's own version of readline.  The readline that bash2 *thinks*
it is using is the version which happens to be installed in the base
system for 4.x and 5.x, but 6.x-current has a different version of
readline in the base system.  Thus, there is a version mismatch.

See:
http://www.FreeBSD.org/cgi/query-pr.cgi?pr=ports/75315

The fix I did was the one from the PR, which was:

    cd /usr/ports/shells/bash2
    make extract
    cp /usr/include/readline/history.h ./work/bash-2.05b/lib/readline/
    make
    ./work/bash-2.05b/bash           # to test what I just built

That binary works fine.  I did not have to recompile the system
libreadline at all.  I did not have to change CFLAGS on anything.

Also note that 'bash2' is the only program that I'm aware of which
exhibits this problem.  For instance, you can also install the newer
version of bash (bash3 is in the port 'shells/bash'), and that will
not have these problems with readline.

I do not think that anyone should worry that this problem is caused
by any bug in -O2 processing in the compiler.  It is a simple
version-mismatch of include files.

-- 
Garance Alistair Drosehn            =   gad at gilead.netel.rpi.edu
Senior Systems Programmer           or  gad at freebsd.org
Rensselaer Polytechnic Institute    or  drosih at rpi.edu


More information about the freebsd-current mailing list