<html><head>
<meta http-equiv="content-type" content="text/html; charset=windows-1252"></head><body
style="font-family: tt;" bgcolor="#FFFFFF" text="#000000">
<div style="font-family: tt;"><div class="moz-text-plain" wrap="false"
graphical-quote="true" style="font-family: -moz-fixed"><pre wrap="">Julien ÉLIE wrote:
</pre><blockquote type="cite" style="color: #000000;"><pre wrap="">And what is the value of DBM_LIBS in Makefile.global? It should
normally be one of "ndbm", "dbm", "gdbm", or "gdbm_compat -lgdbm".
This variable is set when the dbm_open function has been found.
</pre></blockquote><pre wrap=""><!---->
[root@nnrp inn-CURRENT-20131208]# grep DBM_LIBS Makefile.global
DBM_LIBS = -lgdbm
</pre><blockquote type="cite" style="color: #000000;"><blockquote
type="cite" style="color: #000000;"><pre wrap="">Looks like DBM support wasn't previously defined. I cannot remove the
gdbm-devel package without breaking dependency with perl-devel. It
looks like the dependency on gdbm-devel was introduced by the latest
update to perl-core which now requires perl-devel and subsequently
gdbm-devel.
</pre></blockquote><pre wrap="">May it be that "gdbm" or "gdbm_compat -lgdbm" is set for DBM_LIBS?
I have just had a look at the contents of the "GNU dbm" tar ball, which
provides "compat/ndbm.h". If it is installed by the gdbm-devel package,
then the following patch should work:
</pre></blockquote><pre wrap=""><!---->> --- authprogs/ckpasswd.c (révision 9577)
</pre><blockquote type="cite" style="color: #000000;"><pre wrap="">+++ authprogs/ckpasswd.c (copie de travail)
@@ -37,6 +37,8 @@
# include <db.h>
# elif HAVE_NDBM_H
# include <ndbm.h>
+# elif HAVE_COMPAT_NDBM_H
+# include <compat ndbm.h="">
# elif HAVE_GDBM_NDBM_H
# include <gdbm-ndbm.h>
# elif HAVE_DB1_NDBM_H
Index: configure.ac
===================================================================
</gdbm-ndbm.h></compat></ndbm.h></db.h></pre></blockquote><pre wrap=""><!---->> --- configure.ac (révision 9577)
</pre><blockquote type="cite" style="color: #000000;"><pre wrap="">+++ configure.ac (copie de travail)
@@ -379,8 +379,8 @@
sys/select.h sys/time.h unistd.h])
dnl Some Linux systems have db1/ndbm.h instead of ndbm.h. Others have
-dnl gdbm-ndbm.h.
-AC_CHECK_HEADERS([ndbm.h db1/ndbm.h gdbm-ndbm.h], [break])
+dnl compat/ndbm.h or gdbm-ndbm.h.
+AC_CHECK_HEADERS([ndbm.h db1/ndbm.h compat/ndbm.h gdbm-ndbm.h], [break])
dnl Check for whether various symbols are declared.
AC_CHECK_DECLS([pread, pwrite, snprintf, setproctitle, strlcat,
Do you see any improvement if you run "./autogen" (so as to regenerate
the configure file) and then configure and make?
If the gdbm-devel package installs the headers in another place, please
tell me which one it is (you can try to "grep -r dbm_open *" in your
system headers path).
</pre></blockquote><pre wrap=""><!---->
Autogen doesn't work for me since it says it requires autoconf 2.64 and
I have 2.63. If I modify configure.ac it will run but doesn't change
the results.
This may help a bit:
[root@nnrp inn-CURRENT-20131208]# rpm -ql gdbm-devel
/usr/include/gdbm
/usr/include/gdbm.h
/usr/include/gdbm/dbm.h
/usr/include/gdbm/gdbm.h
/usr/include/gdbm/ndbm.h
/usr/lib64/libgdbm.so
/usr/share/info/gdbm.info.gz
/usr/share/man/man3/gdbm.3.gz
[root@nnrp inn-CURRENT-20131208]# grep -r dbm_open /usr/include/*
/usr/include/db4/db.h:#define dbm_open(a, b, c) __db_ndbm_open(a, b, c)
/usr/include/db4/db.h:DBM *__db_ndbm_open __P((const char *, int, int));
/usr/include/db.h:#define dbm_open(a, b, c) __db_ndbm_open(a, b, c)
/usr/include/db.h:DBM *__db_ndbm_open __P((const char *, int, int));
/usr/include/gdbm/gdbm.h:/* Parameters to gdbm_open for READERS, WRITERS, and WRITERS who
/usr/include/gdbm/gdbm.h:extern GDBM_FILE gdbm_open __P((char *, int, int, int, void (*)()));
/usr/include/gdbm/ndbm.h:extern DBM *dbm_open ();
/usr/include/gdbm.h:/* Parameters to gdbm_open for READERS, WRITERS, and WRITERS who
/usr/include/gdbm.h:extern GDBM_FILE gdbm_open __P((char *, int, int, int, void (*)()));
</pre></div></div>
</body>
</html>