計算機メモ目次 (目的のページと内容が一致しない場合, 目次から探してください)
Solaris8 にて openldap-2.4.44 を構築する
準備
Cyrus SASL 2.1.21以上, OpenSSL 0.9.7以上がすでにインストール済みであること.
ICU (International Components for Unicode) もあるとよい.
ICUの構築 ( http://site.icu-project.org/ からソースをダウンロードして展開)
cd icu/source
./runConfigureICU Solaris/GCC
make
make install
コンフィギュレーション
CC=gcc ./configure --prefix=/usr/local
メイク
make depend
make
途中 openldap-2.4.44/servers/slapd/back-mdb/ にてメイク中に
./../../../libraries/liblmdb/mdb.c のコンパイルに失敗する.
error: 'PTHREAD_MUTEX_ROBUST' undeclared (first use in this function)
Solaris8 には PTHREAD_MUTEX_ROBUST と同じ PTHREAD_MUTEX_ROBUST_NP が
あるので, servers/slapd/back-mdb/Makefile の一行を次のように書き換えて,
make を再開する. 同様の関数も2つほどなくリンクに失敗するので今のうちにここで
追加しておく.
CC = $(AC_CC)
DEFS = $(LDAP_INCPATH) $(XINCPATH) $(XDEFS) $(AC_DEFS) $(DEFINES)
CFLAGS = $(AC_CFLAGS) $(DEFS)
とある DEFS に
-DPTHREAD_MUTEX_ROBUST=PTHREAD_MUTEX_ROBUST_NP
-Dpthread_mutexattr_setrobust=pthread_mutexattr_setrobust_np
-Dpthread_mutex_consistent=pthread_mutex_consistent_np
の3つを加える. つまり,
DEFS = $(LDAP_INCPATH) $(XINCPATH) $(XDEFS) $(AC_DEFS) $(DEFINES) -DPTHREAD_MUTEX_ROBUST=PTHREAD_MUTEX_ROBUST_NP -Dpthread_mutexattr_setrobust=pthread_mutexattr_setrobust_np -Dpthread_mutex_consistent=pthread_mutex_consistent_np
インストール
make test
make install
計算機メモ目次 (目的のページと内容が一致しない場合, 目次から探してください)