autoconf
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

weird segfault with ksh


From: Ralf Wildenhues
Subject: weird segfault with ksh
Date: Sat, 27 May 2006 15:08:33 +0200
User-agent: Mutt/1.5.11

There is (at least) one bug in ksh which seems difficult to localize.


1) configuring coreutils-5.96 on Solaris 2.6 chooses /bin/ksh as shell.
The configure script, invoked like
  ../coreutils-5.96/configure -C
segfaults for me at the very end:
| config.status: creating po/Makefile
| ../coreutils-5.96/configure[53962]: 2882 Segmentation Fault(coredump)

The build seems to otherwise work fine though.  The segfault does not
happen when I issue a
  ./config.status --recheck

nor with another
  ../coreutils-5.96/configure -C

when the previous cache file is still in place; removing it:
| config.status: creating po/Makefile
| ../coreutils-5.96/configure[53962]: 5149 Segmentation Fault(coredump)

Adding a `set -x' early in the configure script make the bug go
Heisenberg.


2) Libtool-1.5.22 had been erroneously built with CVS versions of
Autoconf and Automake.  While I'm still convinced that this is
independent of this segfault observed with it on Solaris 7:
http://lists.gnu.org/archive/html/libtool/2006-05/msg00087.html ,
the original shell construct that exposes the segfault may be the same
but it may have just not exposed by earlier libtool scripts.  (The
bugzilla trail above message points to has more information, and some
random patch that makes the issue go away; of course, `set -x' as well.)
:-/

For reference and searchability, the error message is:
| /usr/local/kinetic/split/httpd-2.0.58/srclib/apr/libtool[4767]: : is not an 
identifier
| make[1]: *** [httpd] Segmentation Fault (core dumped)


3) Off-list, Tim Rice showed yet another similar shell error:
| > > Not so good on my OpenServer 5.0.4 box
[...]
| > > gmake[2]: Entering directory `/usr/local/src/gnu/autoconf-2.59c/tests'
| > > /bin/ksh ./testsuite -k config.status -k AC_PROG_SED
| > > /testsuite[900]: : is not an identifier
| > > gmake[2]: *** [check-local] Error 1
[...]
| Here is a snip of testsuite with a "set -x" on the second line.
[...]
| 85;torture.at:594;Substitute a newline;;
| 86;torture.at:622;Define a newline;;
| 87;torture.
| + ./testsuite[901]: : is not an identifier
| gmake[2]: *** [check-local] Error 1



My gut feeling is that all of these issues have the same bug as origin.
My other gut feeling is that we don't know this issue yet: at least the
apache bug disappears with more-or-less random code changes.  Maybe it
helps to do statistical error searching: find more reports where this
turns up, so that we have a chance to localize which issue causes or
exposes the bug in ksh.  (Autoconf is used widely enough that this kind
of search may make sense.)

So, I ask for help: if you observe similar failures as above, please
report them here, with as many details as possible, so we have a chance
to track this down.  Note that the similar-looking error message:
| [...]: variable=value: is not an identifier

is not an instance of this bug, but rather someone wrote
  export variable=value

which, for portability, needs to be rewritten as:
  variable=value; export variable


Maybe someone with access to the source of such a ksh could speak up
(maybe there is a chance we could get access?), so we can localize this
more easily.

Cheers,
Ralf




reply via email to

[Prev in Thread] Current Thread [Next in Thread]