从源构建 OpenLDAP 并缺少 BerkelyDB [关闭]
Posted
技术标签:
【中文标题】从源构建 OpenLDAP 并缺少 BerkelyDB [关闭]【英文标题】:Building OpenLDAP from sources and missing BerkelyDB [closed] 【发布时间】:2010-10-03 00:31:18 【问题描述】:我正在 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**
我像疯子一样在 Google 上搜索,但未能找到解决方案 - 有什么关于探索领域的提示吗?
谢谢
【问题讨论】:
对不起 - 终端输出似乎环绕。我不知道为什么。希望输出仍然清晰。谢谢大家的帮助。 我认为您应该重新考虑您接受的答案。 Naveen 提供了一个与 Stack Overflow 一致的(而不是超级用户)。 【参考方案1】:做yum install db4-devel
(或者只安装预打包的openldap,yum install openldap-servers openldap-clients
【讨论】:
我使用了yum install openldap-servers
,但在使用 Mozilla NSS 时遇到了问题。更多详细信息可以找到here。这就是我从头开始构建 OpenLDAP 的原因。
我发现 BDB 是正在构建的 OpenLDAP 版本的旧工具。有没有办法禁用 BerkleyDB?【参考方案2】:
看来您正在使用 tarball 安装,首先您应该安装 Berkeley DB。您可以从 oracle 网站Oracle Berkeley DB Downloads 找到它。编译安装。
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 后,如果您遇到任何问题,请告诉我。
【讨论】:
我可以安全地将 CPPFLAGS 和 LDFLAGS 添加到 /etc/profile 吗?否则,添加 LD_LIBRARY_PATH 并重启提示后,前面的两个变量会丢失。 +1 提供从源代码构建和安装库的说明。【参考方案3】:对于 CentOS 7,请执行 yum install libdb-devel
。 libdb4-devel 对我不起作用。
【讨论】:
是的。 db4-devel 是 CentOS 【参考方案4】:debian 试试:
aptitude install libdb5.1 libdb5.1-dev libdb5.1-dbg
【讨论】:
【参考方案5】:apt-get install libdb-dev 在 Ubuntu Server 中为我工作。
【讨论】:
以上是关于从源构建 OpenLDAP 并缺少 BerkelyDB [关闭]的主要内容,如果未能解决你的问题,请参考以下文章
强化学习入门笔记 | UCL silver RL | UC Berkely cs285 DRL
无法从源 MacOS High Sierra 构建 TensorFlow
Apache Httpd 从源构建:致命错误:expat.h:没有这样的文件或目录