日期:2014-05-16  浏览次数:20473 次

标记,安装berkeleydb和openldap进行测试
操作系统 ubuntu server 10.10
安装和测试在openldap2.4.23和BerkeleyDB.4.6.21上通过,版本对应,否则要解决不必要的麻烦
图方便,用root
#tar -zxf db-4.6.21.tar.gz
#cd db-4.6.21/build_unix/
#../dist/configure --prefix=/usr/local/BerkeleyDB.4.6
#make
#make install 

#export CPPFLAGS="-I/usr/local/BerkeleyDB.4.6/include"
#export LDFLAGS="-L/usr/local/BerkeleyDB.4.6/lib"
#export LD_LIBRARY_PATH="/usr/local/ssl/lib:/usr/local/BerkeleyDB.4.6/lib"

#tar -zxf openldap-2.4.23.tgz
#cd openldap-2.4.23
#./configure --prefix=/usr/local/openldap.2.4.23
#make depend
#make
#make test
#make install

装好后
运行
#/usr/local/openldap.2.4.23/libexec/slapd
测试
#ldapsearch -x -b '' -s base '(objectclass=*)' namingContexts
输出类似的东西
# extended LDIF
#
# LDAPv3
# base <> with scope baseObject
# filter: (objectclass=*)
# requesting: namingContexts
#

#
dn:
namingContexts: dc=localhost,dc=com

# search result
search: 2
result: 0 Success

# numResponses: 2
# numEntries: 1
证明安装正常

---------------- note

CPPFLAGS,LD_LIBRARY_PATH,LDFLAGS等参数需要在configure时指定,该参数会影响生成的Makefile文件。各参数的具体意义如下:

CPPFLAGS    C/C++预处理器的命令行参数。
LDFLAGS     链接器的命令行参数。

LD_LIBRARY_PATH等PATH的意义如下:

CLASSPATH = specifies where the computer searches for java class libraries
LD_LIBRARY_PATH = specifies where the computer looks for dynamically-loaded libraries
PATH = specifies where the computer looks for executables
LIBPATH = also specifies where the computer looks for dynamically-loaded libraries (usually set just in case something doesn't support LD_LIBRARY_PATH)