XEmacs uses the legacy dbm mode from gdbm but does not take into account that this function may be in gdbm_compat instead of gdbm. The Berkely DB checks aren't correct for version 4 due to a minor thinko. Index: configure.ac =================================================================== RCS file: /pack/xemacscvs/XEmacs/xemacs/configure.ac,v retrieving revision 1.59 diff -u -B -r1.59 configure.ac --- configure.ac 2007/05/21 03:50:13 1.59 +++ configure.ac 2007/06/24 08:44:04 @@ -5391,10 +5391,13 @@ if test "$enable_database_gdbm" != "no"; then AC_CHECK_LIB(gdbm, dbm_open, [ enable_database_gdbm=yes enable_database_dbm=no libdbm=-lgdbm], [ + AC_CHECK_LIB(gdbm_compat, dbm_open, [ + enable_database_gdbm=yes enable_database_dbm=no libdbm="-lgdbm_compat -lgdbm"], [ if test "$enable_database_gdbm" = "yes"; then XE_DIE("Required GNU DBM support cannot be provided.") fi - enable_database_gdbm=no]) + enable_database_gdbm=no], -lgdbm) + ]) fi dnl Check for DBM support in libc and libdbm. @@ -5475,7 +5478,7 @@ fi dnl Berk db 4.1 decorates public functions with version information - if test "$enable_database_berkdb" != "yes" -a "$dbver" = "4"; then + if test "$enable_database_berkdb" = "yes" -a "$dbver" = "4"; then rm -f $tempcname echo "#include <$db_h_file>" > $tempcname echo "configure___ dbfunc=db_create" >> $tempcname