When I try to emerge OpenLDAP, configure fails because it does not find a suitable LDBM backend. Maybe it's some dependency problem with the ebuild? Reproducible: Always Steps to Reproduce: 1. emerge openldap 2. 3. Actual Results: ... checking for db3/db.h... yes checking for Berkeley DB link (default)... no checking for Berkeley DB link (-ldb-3)... no checking for Berkeley DB link (-ldb4)... no checking for Berkeley DB link (-ldb3)... no checking for Berkeley DB link (-ldb2)... no checking for Berkeley DB link (-ldb1)... no configure: warning: could not find suitable LDBM backend configure: error: select appropriate LDBM options or disable !!! ERROR: net-nds/openldap-2.0.27-r4 failed. !!! Function econf, Line 335, Exitcode 1 !!! econf failed Expected Results: Portage 2.0.49-r10 (default-x86-1.4, gcc-3.2.3, glibc-2.3.2-r1, 2.4.20-gentoo-r5) ================================================================= System uname: 2.4.20-gentoo-r5 i686 Pentium III (Coppermine) Gentoo Base System version 1.4.3.10 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CFLAGS="-O3 -mcpu=pentium3 -pipe " CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /var/qmail/control /usr/kde/2/share/config /usr/kde/3/share/config /usr/X11R6/lib/X11/xkb /usr/kde/3.1/share/config /usr/share/config" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" CXXFLAGS="-O3 -mcpu=pentium3 -pipe " DISTDIR="/usr/portage/distfiles" FEATURES="sandbox ccache autoaddcvs" GENTOO_MIRRORS="http://darkstar.ist.utl.pt/gentoo http://gentoo.oregonstate.edu/ http://www.ibiblio.org/pub/Linux/distributions/gentoo" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="x86 oss apm avi crypt cups encode foomaticdb gif gpm jpeg gnome libg++ mad mikmod mpeg ncurses nls pdflib png quicktime spell truetype xml2 xmms xv zlib gtkhtml alsa gdbm berkdb slang readline arts tetex bonobo svga tcltk java guile postgres X sdl tcpd pam libwww ssl perl python esd imlib oggvorbis gtk qt kde motif opengl scanner acpi dvd fbcon gd mozilla ppds samba usb xinerama"
Ok, it should check for db-3 and not db3. Or even better should it be using db-4. The first one is an easy change in the configure script, the latter a little bit more difficult as it should look in db4/db.h or just for db.h. Maybe a little bit more of the output would be useful, then I could have seen whether other db.h's where tried. Gualter, could you attach /var/tmp/portage/openldap-???/work/openldap-???/config.log where the ??? need to be replaced with the actual version
Created attachment 19215 [details] config.log for openldap-2.0.27-r4
problem is due to the case where USE="-gdbm -berkdb". Current code then expects berkdb to be present. I think it's time for OpenLDAP to hard depend on >=sys-libs/db-4.1.25_p1-r1 and properly build that support in always (gdbm support works but it's a major performance hit).
checking for Berkeley DB link (-ldb-3)... no checking for Berkeley DB link (-ldb4)... no checking for Berkeley DB link (-ldb3)... no checking for Berkeley DB link (-ldb2)... no checking for Berkeley DB link (-ldb1)... no Obviously, these would all fail, because Gentoo's is different: DB 4 : -ldb-4 DB 3 : -ldb-3.2 DB 1 : -ldb-1
Zhen: that output really doesn't matter. The problem is that in the case when USE="-berkdb -gdbm" This line gets passed to configure: myconf="${myconf} --enable-ldbm --enable-bdb --with-ldbm-api=berkeley" However sys-libs/db is NOT pulled in when USE="-berkdb -gdbm" !
fixed in CVS now. now if USE="-berkdb -gdbm", we make it pull in berkdb anyway, after displaying a warning.