I just got finished building some lenny packages for fds 1.2.0 and I am having
some issues getting the DS running properly. Using my buildscripts (which
create a working 1.2.0 and 1.1.3 for etch, incrementing lenny package names
as required), the build works, but when I try to create an instance, I get
an error about Netscape Portable Runtime failing to load a library.
lenny:/opt/dirsrv/sbin# ./setup-ds.pl
==============================================================================
This program will set up the Fedora Directory Server.
SNIP
Directory Manager DN [cn=Directory Manager]:
Password:
Password (confirm):
Could not import LDIF file '/tmp/ldifUjjWfx.ldif'. Error: 256. Output:
importing data ...
[14/Apr/2009:12:58:17 -0400] - SSL alert: Security Initialization: NSS
initialization failed (Netscape Portable Runtime error -5977 - Failure to load
dynamic library.): certdir: /etc/dirsrv/slapd-lenny
[14/Apr/2009:12:58:17 -0400] - ERROR: NSS Initialization Failed.
Error: Could not create directory server instance 'lenny'.
Exiting . . .
Log file is '/tmp/setupuyjm1M.log'
I first noticed an issue when building mozldap, this came up
gcc -shared -Wl,-soname -Wl,libssldap60.so -o libssldap60.so
./clientinit.o ./ldapsinit.o ./errormap.o -L../../../../../dist/lib -lldap60
-lprldap60 -L/usr/lib/ -lssl3 -lnss3 -lsoftokn3 -L/usr/lib/ -lplc4 -lplds4 -
lnspr4
/usr/bin/ld: cannot find -lsoftokn3
Which led my to find out lenny libnss3-1d has libsofttokn3.so in /usr/lib/nss
and not /usr/lib. So I added a symlink to /usr/lib. After that mozldap and
everything built ok. But now I'm wondering if I need some kind of special --
with-nss-lib statements in my ./configure's.
lenny:~/fdsbuildscripts/mozldap# dpkg -L libnss3-1d
/usr
/usr/lib
/usr/lib/nss
/usr/lib/nss/libfreebl3.so
/usr/lib/nss/libsoftokn3.so
/usr/lib/nss/libnssdbm3.so
/usr/lib/nss/libnssckbi.so
/usr/lib/nss/libsoftokn3.chk
/usr/lib/nss/libfreebl3.chk
/usr/lib/libnss3.so.1d
/usr/lib/libnssutil3.so.1d
/usr/lib/libsmime3.so.1d
/usr/lib/libssl3.so.1d
/usr/share
/usr/share/doc
/usr/share/doc/libnss3-1d
/usr/share/doc/libnss3-1d/copyright
/usr/share/doc/libnss3-1d/changelog.Debian.gz
/usr/lib/libssl3.so
/usr/lib/libsmime3.so
/usr/lib/libnssutil3.so
/usr/lib/libnss3.so
vs etch
/usr
/usr/share
/usr/share/doc
/usr/share/doc/libnss3-0d
/usr/share/doc/libnss3-0d/copyright
/usr/share/doc/libnss3-0d/changelog.Debian.gz
/usr/share/doc/libnss3-0d/MPL.gz
/usr/lib
/usr/lib/libnss3.so.0d
/usr/lib/libsmime3.so.0d
/usr/lib/libsoftokn3.so.0d
/usr/lib/libssl3.so.0d
/usr/lib/xulrunner
/usr/lib/xulrunner/libfreebl3.so
/usr/lib/xulrunner/libnssckbi.so
/usr/lib/xulrunner/libfreebl3.chk
/usr/lib/libsoftokn3.0d.chk
Here are my ./configure options when building mozldap and fedora-ds-base
mozldap
./configure --prefix=/ \
--libdir=/usr/lib/ \
--includedir=/usr/include/mozldap \
--oldincludedir=/usr/include/mozldap \
--sysconfdir=/usr/share/mozldap/etc/ \
--bindir=/usr/lib/mozldap/ \
--enable-clu \
--with-nss-inc=/usr/include/nss/ \
--with-nss-lib=/usr/lib/ \
--with-nspr-inc=/usr/include/nspr/ \
--with-nspr-lib=/usr/lib/ \
--with-svrcore-inc=/usr/include \
--with-svrcore-lib=/usr/lib \
--with-sasl
fedora-ds-base
CPPFLAGS=-DNETSNMP_USE_INLINE=1 ./configure \
--prefix=/opt/dirsrv \
--enable-bundle \
--localstatedir=/var \
--sysconfdir=/etc \
--datadir=/usr/share \
--with-svrcore-inc=/usr/include \
--with-svrcore-lib=/usr/lib \
--with-ldapsdk-inc=/usr/include/mozldap/ \
--with-ldapsdk-lib=/usr/lib/ \
--with-ldapsdk-bin=/usr/lib/mozldap \
--with-nss-inc=/usr/include/nss/ \
--with-nss-lib=/usr/lib/ \
--with-nspr-inc=/usr/include/nspr/ \
--with-nspr-lib=/usr/lib/ \
--with-icu-inc=/usr/include/unicode \
--with-icu-lib=/usr/lib \
--with-icu-bin=/usr/bin \
--with-sasl \
--with-net-snmp \
--with-kerberos
Thanks
Ryan