26

我正在 RHEL 5 上构建 OpenLDAP;我使用了http://www.linux.com/archive/feature/113607上的说明。

一切顺利,直到为 OpenLDAP 运行 './configure' - 记录了以下错误:

*<earlier output snipped>*
checking for gethostbyaddr_r... yes
checking number of arguments of ctime_r... 2
checking number of arguments of gethostbyname_r... 6
checking number of arguments of gethostbyaddr_r... 8
checking db.h usability... yes
checking db.h presence... yes
checking for db.h... yes
checking for Berkeley DB major version in db.h... 5
checking for Berkeley DB minor version in db.h... 1
checking if Berkeley DB version supported by BDB/HDB backends... yes
**checking for Berkeley DB link (default)... no
configure: error: BDB/HDB: BerkeleyDB not available**

我像疯子一样在谷歌上搜索,但未能找到解决方案 - 关于探索领域的任何提示?

谢谢

4

5 回答 5

16

yum install db4-devel

(或者只安装预打包的openldap,yum install openldap-servers openldap-clients

于 2010-10-03T01:37:38.783 回答
16

似乎您正在使用 tarball 安装,首先您应该安装 Berkeley DB。您可以从 Oracle 网站上的Oracle Berkeley DB 下载找到它。编译并安装它。

cd db-4.7.25.NC
. ./dist/configure
make
make install
cd /usr/local/BerkeleyDB.4.7/

这将安装 BerkeleyDB。现在您需要提供成功编译 OpenLDAP 的位置。

export CPPFLAGS="-I/usr/local/BerkeleyDB.4.7/include"
export LDFLAGS="-L/usr/local/BerkeleyDB.4.7/lib -Wl,-R,/usr/local/BerkeleyDB.4.7/lib -Wl,--enable-new-dtags"
# Build OpenLDAP
... 

如果你没有设置RPATH,那么你应该添加LD_LIBRARY_PATH到 /etc/profile.

export LD_LIBRARY_PATH="/usr/local/BerkeleyDB.4.7/lib"

编译 OpenLDAP 后,如果您遇到任何问题,请告诉我。

于 2012-07-27T12:01:46.220 回答
8

对于 CentOS 7,执行yum install libdb-devel. libdb4-devel 对我不起作用。

于 2016-04-07T08:07:39.993 回答
6

Debian尝试:

aptitude install libdb5.1 libdb5.1-dev libdb5.1-dbg

于 2013-11-13T20:21:51.440 回答
3

apt-get install libdb-dev 在 Ubuntu Server 中为我工作。

于 2017-10-17T11:09:29.367 回答