[Date Prev][Date Next] [Chronological] [Thread] [Top]

RE: Version 2.0.2x and berkeleydb4: linked again 2 lb-db-Versions ?



Your 2.0 build pulled in libpam. Your Linux distribution's libpam is pulling
in BDB 3. Disable pam in your configure step.

  -- Howard Chu
  Chief Architect, Symas Corp.       Director, Highland Sun
  http://www.symas.com               http://highlandsun.com/hyc
  Symas: Premier OpenSource Development and Support

> -----Original Message-----
> From: owner-openldap-software@OpenLDAP.org
> [mailto:owner-openldap-software@OpenLDAP.org]On Behalf Of Harry Ruter
> Sent: Sunday, September 29, 2002 11:24 PM
> To: OpenLDAP
> Subject: Version 2.0.2x and berkeleydb4: linked again 2
> lb-db-Versions ?
>
>
> Hi everybody,
>
> i'm having problems to get version 2.0.2x
> together with berkeleydb4 (4.0.14).
>
> When i configure/compile with the following options,
> slapd is linked against two lbdb's :
>
> ---snipp---
> CPPFLAGS="-I/usr/local/ssl/include -I/usr/local/berkeleydb4/include \
> -I/usr/local/kerberos/include -I/usr/local/sasl/include"
> LDFLAGS="-L /usr/local/ssl/lib -L/usr/local/berkeleydb4/lib \
> -L/usr/local/kerberos/lib -L/usr/local/sasl/lib"
> export LD_LIBRARY_PATH="/usr/local/berkeleydb4/lib"
>
> export CPPFLAGS LDFLAGS
>
> make clean
>
> ./configure \
> --prefix=/usr/local/ldap2-0-x \
> --sysconfdir=/usr/local/ldap2-0-x/etc \
> --localstatedir=/usr/local/ldap2-0-x/run \
> --enable-wrappers \
> --enable-modules \
> --enable-kpasswd \
> --enable-spasswd \
> --with-threads \
> --enable-crypt \
> --enable-sldapd \
> --enable-ldbm \
> --enable-dynamic \
> --enable-shared \
> --with-tls \
> --with-cyrus-sasl \
> --with-ssl \
> --enable-syslog \
> --enable-sql \
> --enable-shell \
> --enable-slurpd \
> --enable-local \
> --enable-aci \
> --enable-phonetic \
> --enable-dnssrv \
> && make depend && make
>
> ---snipp---
>
> And here you can see , it's linked against
> libdb-4.0.so and libdb-3.1.so .
>
> ---snipp---
> 486dx66:/opt/make/openldap-2.0.26/servers/slapd # ldd slapd
>         /lib/libregframe.so => /lib/libregframe.so (0x40019000)
>         libldap_r.so.2 => /usr/lib/libldap_r.so.2 (0x4002a000)
>         liblber.so.2 => /usr/lib/liblber.so.2 (0x40056000)
>         libdb-4.0.so =>
> /usr/local/berkeleydb4/lib/libdb-4.0.so (0x40060000)
>         libiodbc.so.2 => /usr/local/lib/libiodbc.so.2 (0x400ea000)
>         libsasl.so.7 => /usr/local/sasl/lib/libsasl.so.7 (0x40108000)
>         libkrb4.so.2 => /usr/local/kerberos/lib/libkrb4.so.2
> (0x40114000)
>         libdes425.so.3 =>
> /usr/local/kerberos/lib/libdes425.so.3 (0x4012a000)
>         libkrb5.so.3 => /usr/local/kerberos/lib/libkrb5.so.3
> (0x4012e000)
>         libk5crypto.so.3 =>
> /usr/local/kerberos/lib/libk5crypto.so.3 (0x40187000)
>         libcom_err.so.3 =>
> /usr/local/kerberos/lib/libcom_err.so.3 (0x40199000)
>         libssl.so.0.9.6 => /lib/libssl.so.0.9.6 (0x4019b000)
>         libcrypto.so.0.9.6 => /usr/lib/libcrypto.so.0.9.6 (0x401c8000)
>         libcrypt.so.1 => /lib/libcrypt.so.1 (0x40285000)
>         libnsl.so.1 => /lib/libnsl.so.1 (0x402b3000)
>         libresolv.so.2 => /lib/libresolv.so.2 (0x402ca000)
>         libdl.so.2 => /lib/libdl.so.2 (0x402db000)
>         libltdl.so.0 => /usr/lib/libltdl.so.0 (0x402de000)
>         libpthread.so.0 => /lib/libpthread.so.0 (0x402e3000)
>         libc.so.6 => /lib/libc.so.6 (0x402f9000)
>         libdb-3.1.so => /usr/lib/libdb-3.1.so (0x4040c000)
>         libpam.so.0 => /lib/libpam.so.0 (0x40489000)
>         /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
> 486dx66:/opt/make/openldap-2.0.26/servers/slapd #
> ---snipp---
>
> This can't work and it segfaults when doing make test :
>
> ---snipp---
>
> 486dx66:/opt/make/openldap-2.0.26 # make test
> cd tests; make test
> make[1]: Entering directory `/opt/make/openldap-2.0.26/tests'
> ln: `./data': cannot overwrite directory
> make[1]: [test-ldbm] Error 1 (ignored)
> ln: `./schema': File exists
> make[1]: [test-ldbm] Error 1 (ignored)
> Initiating LDAP tests for LDBM...
> >>>>> Executing all LDAP tests...
> >>>>> Test Directory: .
> >>>>> Backend: ldbm
> >>>>> Starting test000-rootdse ...
> running defines.sh . ldbm
> Datadir is ./data
> Cleaning up in ./test-db...
> Starting slapd on TCP/IP port 9009...
> Using ldapsearch to retrieve all the entries...
> Waiting 5 seconds for slapd to start...
> ./scripts/test000-rootdse: line 35: 13388 Segmentation fault      \
> $SLAPD -f $SCHEMACONF -h $MASTERURI -d $LVL $TIMING >$MASTERLOG 2>&1
> Waiting 5 seconds for slapd to start...
> ---snipp---
>
> (By the way, where's the file  $MASTERLOG ?)
>
> Here's the version which works,
> but it doesn't use berkeleydb4 :
>
> That's how i configure/compile :
>
> ---snipp---
>
> CPPFLAGS="-I/usr/local/ssl/include -I/usr/local/kerberos/include\
>  -I/usr/local/sasl/include"
> LDFLAGS="-L/usr/local/ssl/lib -L/usr/local/kerberos/lib \
> -L/usr/local/sasl/lib"
> LD_LIBRARY_PATH="/usr/local/berkeleydb4/lib"
>
> export CPPFLAGS LDFLAGS LD_LIBRARY_PATH
>
> make clean
>
> ./configure \
> --enable-ldbm \
> --prefix=/usr/local/ldap2-0-x \
> --sysconfdir=/usr/local/ldap2-0-x/etc \
> --localstatedir=/usr/local/ldap2-0-x/run \
> --enable-wrappers \
> --enable-modules \
> --enable-kpasswd \
> --enable-spasswd \
> --with-threads \
> --enable-crypt \
> --enable-sldapd \
> --enable-dynamic \
> --enable-shared \
> --with-tls \
> --with-cyrus-sasl \
> --with-ssl \
> --enable-syslog \
> --enable-sql \
> --enable-shell \
> --enable-slurpd \
> --enable-local \
> --enable-aci \
> --enable-phonetic \
> --enable-dnssrv \
> --enable-kerberos  \
> && make depend && make
>
> ---snipp---
> 486dx66:/opt/make/openldap-2.0.26/servers/slapd # ldd slapd
>         /lib/libregframe.so => /lib/libregframe.so (0x40019000)
>         libldap_r.so.2 => /usr/lib/libldap_r.so.2 (0x4002a000)
>         liblber.so.2 => /usr/lib/liblber.so.2 (0x40056000)
>         libdb-3.1.so => /usr/lib/libdb-3.1.so (0x40060000)
>         libiodbc.so.2 => /usr/local/lib/libiodbc.so.2 (0x400dd000)
>         libsasl.so.7 => /usr/local/sasl/lib/libsasl.so.7 (0x400fb000)
>         libkrb4.so.2 => /usr/local/kerberos/lib/libkrb4.so.2
> (0x40107000)
>         libdes425.so.3 =>
> /usr/local/kerberos/lib/libdes425.so.3 (0x4011d000)
>         libkrb5.so.3 => /usr/local/kerberos/lib/libkrb5.so.3
> (0x40121000)
>         libk5crypto.so.3 =>
> /usr/local/kerberos/lib/libk5crypto.so.3 (0x4017a000)
>         libcom_err.so.3 =>
> /usr/local/kerberos/lib/libcom_err.so.3 (0x4018c000)
>         libssl.so.0.9.6 => /lib/libssl.so.0.9.6 (0x4018e000)
>         libcrypto.so.0.9.6 => /usr/lib/libcrypto.so.0.9.6 (0x401bb000)
>         libcrypt.so.1 => /lib/libcrypt.so.1 (0x40278000)
>         libnsl.so.1 => /lib/libnsl.so.1 (0x402a6000)
>         libresolv.so.2 => /lib/libresolv.so.2 (0x402bc000)
>         libdl.so.2 => /lib/libdl.so.2 (0x402ce000)
>         libltdl.so.0 => /usr/lib/libltdl.so.0 (0x402d1000)
>         libpthread.so.0 => /lib/libpthread.so.0 (0x402d6000)
>         libc.so.6 => /lib/libc.so.6 (0x402ec000)
>         libpam.so.0 => /lib/libpam.so.0 (0x403ff000)
>         /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
> 486dx66:/opt/make/openldap-2.0.26/servers/slapd #
>
> ---snipp---
>
> So, the difference is that in the first case i export the
> the include- and lib-path of berkeleydb4 , but this
> is only partly used, as then two libdb- are linked ...
>
> ---snipp---
>
> What's going wrong ?
> In version 2.1.x i use the first configure/compile-process
> (with include- and lib-path of berkeleydb4) and it works fine ...
> so it seems to be an error in the configure/compile-process of
> version 2.0.2x ...
>
> That's how i configure/compile 2.1.5 :
>
> ---snipp---
> CPPFLAGS="-I/usr/local/berkeleydb4/include
> -I/usr/local/kerberos/include \
> -I/usr/local/sasl2/include/sasl -I/usr/local/sasl2/include
> -I/usr/local/ssl/include"
> LDFLAGS="-L/usr/local/berkeleydb4/lib -L/usr/local/kerberos/lib  \
> -L/usr/local/sasl2/lib/sasl2 -L/usr/local/sasl2/lib
> -L/usr/local/ssl/lib"
>
> export CPPFLAGS LDFLAGS
>
> export LD_LIBRARY_PATH=/usr/local/berkeleydb4/lib:$LD_LIBRARY_PATH
>
> ./configure \
> --prefix=/usr/local/ldapv2-1-5 \
> --mandir=/usr/local/ldapv2-1-5/man \
> --enable-proctitle \
> --enable-aci \
> --enable-ipv6 \
> --enable-monitor \
> --enable-wrappers \
> --enable-modules \
> --enable-kpasswd \
> --enable-spasswd \
> --with-threads \
> --enable-crypt \
> --enable-sldapd \
> --enable-ldbm \
> --enable-aclgroups \
> --enable-dynamic \
> --enable-shared \
> --with-tls \
> --with-cyrus-sasl \
> --with-ssl=/usr/local/ssl \
> --enable-syslog \
> --enable-shell \
> --enable-slurpd \
> --enable-local \
> --enable-phonetic \
> --enable-dnssrv \
> && make depend && make
>
> ---snipp---
>
> And that's what ldd shows me and what is what i want
> with 2.0.2x too ...
>
> ---snipp---
>
> 486dx66:/opt/make/openldap-2.1.5/servers/slapd # ldd slapd
>         /lib/libregframe.so => /lib/libregframe.so (0x40019000)
>         libresolv.so.2 => /lib/libresolv.so.2 (0x4002a000)
>         libdb-4.0.so =>
> /usr/local/berkeleydb4/lib/libdb-4.0.so (0x4003b000)
>         libkrb4.so.2 => /usr/local/kerberos/lib/libkrb4.so.2
> (0x400c5000)
>         libdes425.so.3 =>
> /usr/local/kerberos/lib/libdes425.so.3 (0x400db000)
>         libkrb5.so.3 => /usr/local/kerberos/lib/libkrb5.so.3
> (0x400df000)
>         libk5crypto.so.3 =>
> /usr/local/kerberos/lib/libk5crypto.so.3 (0x40138000)
>         libcom_err.so.3 =>
> /usr/local/kerberos/lib/libcom_err.so.3 (0x4014a000)
>         libssl.so.0.9.6 => /lib/libssl.so.0.9.6 (0x4014c000)
>         libcrypto.so.0.9.6 => /usr/lib/libcrypto.so.0.9.6 (0x40179000)
>         libcrypt.so.1 => /lib/libcrypt.so.1 (0x40236000)
>         libdl.so.2 => /lib/libdl.so.2 (0x40264000)
>         libpthread.so.0 => /lib/libpthread.so.0 (0x40267000)
>         libc.so.6 => /lib/libc.so.6 (0x4027d000)
>         /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
> 486dx66:/opt/make/openldap-2.1.5/servers/slapd #
>
> ---snipp---
>
> I posted some times ago with the same problem and i tried everything
> people on the list suggested (renaming /usr/lib/libdb.h ....etc).
>
> My configuration :
>
> bdb4 in /usr/local/berkeleydb4
> bdb3.1 in /usr/ (lib/include)
>
> OS : LINUX with Kernel 2.4.19
> gcc 2.95.2
>
>
> greets
>
> Harry
>
>