I built a new system last evening.
RedHat's 6.0 Linux release contains glibc2.1. (5.x had 2.0.) The
glibc freaks have chosen, for some reason which is thoroughly opaque
to me, to instantiate a new subdirectory under /usr/include,
/usr/include/db1, in which they have abandoned ndbm.h.
As you might imagine, configure fails to find it. I first found this
problem when building kth-krb and arla for this system (kth-krb's
build dies a horrible death without ndbm.h), and cut off XEmacs'
configure before it could express any more confusion when I saw this
roll up the screen.
Insuring that one has set CPATH=/usr/include/db1 during both configure
and make will induce XEmacs to build as one expects. Or I suppose you
could add --cflags=-I/usr/include/db1. And in fact the diff between
my old RH5.1 Installation file and the new one under RH6.0 is trivial,
regarding only the kernel name from uname(1), the directory where I'm
building, and the fact that the latest XFree release has done away
with the "/usr/X11" symlink.
I don't know if configure can be coerced into adding an appropriate
check to cover this automatically, or if this should merely go into
the PROBLEMS file.
BTW, "gcc -v" in RH6.0 says:
"Reading specs from /usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66/specs
gcc version egcs-2.91.66 19990314/Linux (egcs-1.1.2 release)"
I haven't run XEmacs hard in the new environment yet (and this is for
a home machine, where I build without error-checking) but it seems to
run fine so far.
--karl