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

Re: Build: 2.1.13 under SuSE Linux 8.0 with both BDB 4.0 and 4.1 (ITS#2339)

At 07:26 AM 2/28/2003, spam4octan@highway.ru wrote:
>The problem is I could not make OpenLDAP 2.1.13 build with libdb-4.1.so.

The configure script isn't coded to support that particular naming
scheme.  It currently tries -ldb41, -ldb-41, -ldb4, -ldb-4, -ldb.
I've committed a change to HEAD to check for -ldb-4.1 as well (as
well as a couple of other likely variants).

>No matter how I try, it ALWAYS links with libdb-4.0.so annoyingly.

Well, you could link libdb41.so (and friends) to libdb-4.1.so (and friends).

>Why does cyrus-sasl (which *DOES NOT* require Berkeley DB 4.1 to operate) links
>with libdb-4.1.so successfully, while OpenLDAP 2.1.13 (which *DOES NEED* 4.1 to
>operate) do not?

Likely it tries -ldb-4.1 (or one of the other variants which refer to
libdb-4.1.so).   Or just install Berkeley DB in a separate directory
and make sure your environment is such that headers and libraries
in this separate directory are found before those you have in other

>I observed several program packages, including cyrus-sasl, PHP, etc. They DO
>have special `configure' options like this:
># cd cyrus-sasl-2.1.12
># ./configure --help
>  ...
>  --with-bdb-libdir=DIR   Berkeley DB lib files are in DIR
>  --with-bdb-incdir=DIR   Berkeley DB include files are in DIR
>  ...
>Why does OpenLDAP project doesn't have any, while it is STRONGLY dependent on
>BDB 4.1?

We believe setting CPPFLAGS and LDFLAGS (and other environment variables)
are the appropriate mechanisms for controlling the include and library paths.