自宅サーバ構築メモ

BerkeleyDBのインストール

コンパイル&インストール

ソースファイルは、/var/tmp/srcに保存していることとする。

$ cd /var/tmp/src
$ tar xvzf db-4.6.21.tar.gz
$ cd db-4.6.21
$ cd buid_unix
$ ../dist/configure --prefix=/usr/local/BerkeleyDB-4.6.21
$ make
$ su root -c "make install"
# ln -s /usr/local/BerkeleyDB-4.6.21 /usr/local/BerkeleyDB

設定

  • LIBRALY PATHの設定
    # vi /etc/ld.so.conf.d/add.conf (← ここに必要なものは追加していく)
    
      /usr/local/BerkeleyDB/lib  <- これを追記
    
    # ldconfig

はまりどころ

2008年10月現在、BerkeleyDBの最新版は「4.7系」となっている。
が、今回は以下の制約により「4.6系」を使うこととなった

  • OpenLDAP-2.4系が、BerkeleyDB-4.7系に対応していない

BerkeleyDB-4.7系で、OpenLDAP-2.4系のコンパイルをしようとすると以下のようなエラーが出力さて、コンパイルが通らない。

------------------------
make[3]: Leaving directory `/var/tmp/src/openldap-2.4.11/servers/slapd/back-monitor'

 cd back-bdb; make -w all
make[3]: Entering directory `/var/tmp/src/openldap-2.4.11/servers/slapd/back-bdb'
rm -f version.c
../../../build/mkversion -v "2.4.11" back_bdb > version.c
/bin/sh ../../..//libtool --tag=disable-shared --mode=compile cc -g -O2 -I../../../include\
       -I../../../include -I.. -I./..  -I/usr/local/BerkeleyDB/include    -c init.c cc -g -O2 -I../../../include\
-I../../../include -I.. -I./.. -I/usr/local/BerkeleyDB/include -c init.c -o init.o
init.c: In function 'bdb_db_open':
init.c:509: error: 'DB_ENV' has no member named 'lk_handle'
init.c: In function 'bdb_back_initialize':
init.c:752: warning: passing argument 1 of 'db_env_set_func_yield' from incompatible pointer type
make[3]: *** [init.lo] Error 1
make[3]: Leaving directory `/var/tmp/src/openldap-2.4.11/servers/slapd/back-bdb'
make[2]: *** [.backend] Error 1
make[2]: Leaving directory `/var/tmp/src/openldap-2.4.11/servers/slapd'
make[1]: *** [all-common] Error 1
make[1]: Leaving directory `/var/tmp/src/openldap-2.4.11/servers'
make: *** [all-common] Error 1
-------------------------

というわけで、OpenLDAP2.4系を使うには、BerkeleyDB4.6系を使うようにしてください。

これ、けっこうはまりました。。。。(ーー;)

次へ:OpenLDAPのインストールへ


トップ   編集 凍結解除 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2008-11-06 (木) 22:04:04 (671d)