I've been working a little bit towards setting up a build environment for fds in debian. I've never actually built anything this complex, and in general my compiling experience is somewhat lacking. I'm trying to follow the write up at http://directory.fedoraproject.org/wiki/Building . Which states you have to build the mozilla components first. Here's where it gets interesting.
nspr and nss are already installed on the systems by default.
ii libnspr4-0d 1.8.0.15~pre080131b-0etch1 NetScape Portable Runtime Library ii libnspr4-dev 1.8.0.15~pre080131b-0etch1 Development files for the NetScape Portable ii libnss3-0d 1.8.0.15~pre080131b-0etch1 Network Security Service libraries ii libnss3-0d-dbg 1.8.0.15~pre080131b-0etch1 Development files for the Network Security S ii libnss3-dev 1.8.0.15~pre080131b-0etch1 Development files for the Network Security S ii libnss3-tools 1.8.0.15~pre080131b-0etch1 Network Security Service tools
But they have a goofy version number dictated by the xulrunner package.
http://packages.debian.org/source/etch/xulrunner
ywgbuild:/usr/src/dsbuild/meta/ds# pkg-config --modversion xulrunner-nss 1.8.0.13pre ywgbuild:/usr/src/dsbuild/meta/ds# pkg-config --modversion xulrunner-nspr 4.6.7
Now, I'm not sure why nspr is reporting it's true version number, while nss is reporting the 1.8.0 version when it should be something like 3.10 or 3.11.
And, I've been digging on the debian packages listings trying to figure out just which version nss is. Any idea how to pull the version number right out of the shared lib? Anyhow I moved on to try and build the next component, svrcore.
I had to do some fudging with pkg-config (ln -s xulrunner-nspr.pc nspr.pc and ln -s xulrunner-nss.pc nss.pc) in order for svrcore's configure to work (prolly a RH vs debian package naming issue). So I ./configure --prefix=/opt/svrcore and it makes and make install's ok. I add /opt/svrcore/lib to ld.so.conf, and run ldconfig.
ywgbuild:/opt/svrcore# strings /etc/ld.so.cache |grep svrcore libsvrcore.so.0 /opt/svrcore/lib/libsvrcore.so.0 libsvrcore.so /opt/svrcore/lib/libsvrcore.so ywgbuild:/opt/svrcore# pkg-config --modversion svrcore 4.0.4
Next on the list is the mozldap library
ywgbuild:/usr/src/mozldap-6.0.5/mozilla/directory/c-sdk# ./configure --enable-clu --with-sasl --with-svrcore --enable-optimize --disable-debug --prefix=/opt/mozldap works ok. But then make throws this
gcc -o ntuserpin.o -c -pipe -ansi -Wall -pthread -O2 -fPIC -UDEBUG -DNDEBUG=1 -DXP_UNIX=1 -D_POSIX_SOURCE=1 -D_BSD_SOURCE=1 -D_SVID_SOURCE=1 -D_LARGEFILE64_SOURCE=1 -DHAVE_FCNTL_FILE_LOCKING=1 -DLINUX=1 -Dlinux=1 -Di386=1 -DHAVE_LCHOWN=1 -DHAVE_STRERROR=1 -DHAVE_GETADDRINFO=1 -DHAVE_GETNAMEINFO=1 -DHAVE_SASL=1 -DHAVE_SASL_OPTIONS=1 -DLDAP_SASLIO_HOOKS=1 -D_REENTRANT=1 -DNET_SSL -DNO_LIBLCACHE -DLDAP_REFERRALS -DNS_DOMESTIC -DLINUX2_0 -DLINUX1_2 -DLINUX2_1 -DLDAP_TOOL_ARGPIN -DLDAP_TOOL_PKCS11 -DFORCE_PR_LOG -D_PR_PTHREADS -UHAVE_CVAR_BUILT_ON_SEM -I/usr/include/nss -I/usr/include/nspr -I/usr/include/nspr -I/usr/include/sasl -I../../../../../dist/public/ldap -I../../../ldap/include -I/opt/svrcore/include -I/usr/include/nspr -I/usr/include/nss ntuserpin.c c++ -o bin/ldapdelete ldapdelete.o common.o convutf8.o fileurl.o ldaptool-sasl.o argpin.o ntuserpin.o -L../../../../../dist/./lib -lssldap60 -lprldap60 -lldap60 -lldif60 -L../../../../../dist/lib -lsvrcore -lssl3 -lnss3 -lsoftokn3 -L/usr/lib -lplds4 -lplc4 -lnspr4 -lpthread -ldl -lplc4 -lplds4 -lnspr4 -lsasl2 -ldl -lresolv -lpthread /usr/bin/ld: cannot find -lsvrcore collect2: ld returned 1 exit status make[2]: *** [bin/ldapdelete] Error 1
ywgbuild:/tmp# strace -o out ld -l svrcore ld: cannot find -lsvrcore ywgbuild:/tmp# grep open out open("/etc/ld.so.cache", O_RDONLY) = 3 open("/usr/lib/libbfd-2.17.so", O_RDONLY) = 3 open("/lib/tls/i686/cmov/libc.so.6", O_RDONLY) = 3 open("/usr/lib/locale/locale-archive", O_RDONLY|O_LARGEFILE) = 3 open("a.out", O_RDWR|O_CREAT|O_TRUNC|O_LARGEFILE, 0666) = 3 open("/usr/bin/../lib/libsvrcore.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/libsvrcore.a", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/usr/i486-linux-gnu/lib32/libsvrcore.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/usr/i486-linux-gnu/lib32/libsvrcore.a", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/usr/local/lib32/libsvrcore.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/usr/local/lib32/libsvrcore.a", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/lib32/libsvrcore.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/lib32/libsvrcore.a", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/usr/lib32/libsvrcore.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/usr/lib32/libsvrcore.a", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/usr/i486-linux-gnu/lib/libsvrcore.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/usr/i486-linux-gnu/lib/libsvrcore.a", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/usr/local/lib/libsvrcore.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/usr/local/lib/libsvrcore.a", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/lib/libsvrcore.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/lib/libsvrcore.a", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/usr/lib/libsvrcore.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/usr/lib/libsvrcore.a", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/usr/share/locale/locale.alias", O_RDONLY) = 4 open("/usr/share/locale/en_CA/LC_MESSAGES/ld.mo", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/share/locale/en/LC_MESSAGES/ld.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
So I'm not sure why ld doesn't want to look in /opt/svrcore/lib for the libsvrcore shared libs. it just looks in the default spots according to strace. Did I mess up somewhere? As a quick fix I just symlinked /opt/svrcore/lib/libsvrcore.(a|so) to /usr/lib and it built. mozldap doesn't make install apparently, but creates a dist directory symlinking all the built apps and libs. So I just copied /usr/src/mozldap-6.0.5/mozilla/dist to /opt/mozldap copying the files rather then preserving the symlinks.
add /opt/mozldap/lib to ld.so.conf && ldconfig ywgbuild:/opt/mozldap/bin# strings /etc/ld.so.cache |grep mozldap /opt/mozldap/lib/libssldap60.so /opt/mozldap/lib/libprldap60.so /opt/mozldap/lib/libldif60.so /opt/mozldap/lib/libldap60.so
So those libs look to be installed ok.
I then hacked up a fedora mozldap.pc (the make process didn't generate one, but the mozldap.pc.in file is there..) ywgbuild:/tmp/usr/lib/pkgconfig# cat mozldap.pc prefix=/opt/mozldap exec_prefix=${prefix} libdir=${prefix}/lib includedir=${prefix}/include bindir=${prefix}/bin major=6 minor=0 submin=5 libsuffix=60
Name: mozldap Description: Mozilla LDAP C SDK Version: 6.0.5 Requires: nspr >= 4.6 , nss >= 1.8.0.13pre Libs: -lssldap60 -lprldap60 -lldap60 Cflags: -I${includedir}
But again I end up in a spot where ld can't find the libs I just installed. So I symlynk'd everything in /opt/mozldap/lib to /usr/lib/ Then ld -lssldap60 -lprldap60 -lldap60 wouldn't complain about not being able to find the libs anymore.
Now for perl-ldap
export LDAPSDKINCDIR="/opt/mozldap/include" export LDAPSDKDIR="/opt/mozldap" export LDAPSDKLIBDIR="/opt/mozldap/lib" export NSPRINCDIR="/usr/include/nspr" export NSPRLIBDIR="/usr/lib" export NSSLIBDIR="/usr/lib"
make would puke complaining about missing ldap-standard.h
ln -s /opt/mozldap/public/ldap/ldap-standard.h /opt/mozldap/include/ldap-standard.h
ywgbuild:/usr/src/perl-mozldap-1.5.2# make cc -c -I/opt/mozldap/include -D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS -DDEBIAN -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -DVERSION="1.5" -DXS_VERSION="1.5" -fPIC "-I/usr/lib/perl/5.8/CORE" -DUSE_SSL API.c Running Mkbootstrap for Mozilla::LDAP::API () chmod 644 API.bs rm -f blib/arch/auto/Mozilla/LDAP/API/API.so LD_RUN_PATH="/opt/mozldap/lib" LD_RUN_PATH=/opt/mozldap/lib cc -shared -L/usr/local/lib API.o -o blib/arch/auto/Mozilla/LDAP/API/API.so \ -L/opt/mozldap/lib -lssldap60 -lprldap60 -lldap60 -L/usr/lib -lssl3 -lnss3 -L/usr/lib -lplc4 -lnspr4 \
chmod 755 blib/arch/auto/Mozilla/LDAP/API/API.so cp API.bs blib/arch/auto/Mozilla/LDAP/API/API.bs chmod 644 blib/arch/auto/Mozilla/LDAP/API/API.bs Manifying blib/man3/Mozilla::LDAP::Conn.3pm Manifying blib/man3/Mozilla::LDAP::Utils.3pm Manifying blib/man3/Mozilla::LDAP::Entry.3pm Manifying blib/man3/Mozilla::LDAP::LDIF.3pm Manifying blib/man3/Mozilla::LDAP::API.3pm
So where I'm at now, using sysyem nspr and nss, built mozldap and installed to /opt/mozldap, built svrcore and installed to /opt/svrcore and built perl-ldap, not installing it anywhere.
So I figured I would give the newer dsbuild a shot at building the directory server. And it cranks away for a while then comes back with a message complaining about ldap agent and snmp. I initiated dsbuild with just a make command with no options.
Here are the snmp packages installed ywgbuild:/usr/src/dsbuild/meta/ds# dpkg -l|grep snmp ii libsnmp-base 5.2.3-7etch2 NET SNMP (Simple Network Management Protocol ii libsnmp-perl 5.2.3-7etch2 NET SNMP (Simple Network Management Protocol ii libsnmp9 5.2.3-7etch2 NET SNMP (Simple Network Management Protocol ii libsnmp9-dev 5.2.3-7etch2 NET SNMP (Simple Network Management Protocol
I've sent the last portion of the build process to pastebin if you want to have a look at
but the guts of the issue is this
3]: Entering directory `/usr/src/dsbuild/ds/ldapserver/work/fedora-ds-base-1.1.0' /bin/sh ./libtool --tag=CC --mode=link gcc -g -o ldap-agent-bin ldap/servers/snmp/ldap_agent_bin-main.o ldap/servers/snmp/ldap_agent_bin-ldap-agent.o ldap/servers/slapd/ldap_agent_bin-agtmmap.o -lssldap60 -lprldap60 -lldap60 -lldif60 -lsasl2 -lssl3 -lnss3 -lsoftokn3 -lplc4 -lplds4 -lnspr4 -L/usr/lib -lnetsnmpmibs -lnetsnmpagent -lnetsnmphelpers -lnetsnmp -lm -ldl -lsensors -lwrap -lwrap gcc -g -o ldap-agent-bin ldap/servers/snmp/ldap_agent_bin-main.o ldap/servers/snmp/ldap_agent_bin-ldap-agent.o ldap/servers/slapd/ldap_agent_bin-agtmmap.o -lssldap60 -lprldap60 -lldap60 -lldif60 /usr/lib/libsasl2.so -lresolv -lssl3 -lnss3 -lsoftokn3 -lplc4 -lplds4 -lnspr4 -L/usr/lib /usr/lib/libnetsnmpmibs.so /usr/lib/libnetsnmpagent.so /usr/lib/libnetsnmphelpers.so /usr/lib/libnetsnmp.so -lcrypto -lm -ldl -lsensors -lwrap ldap/servers/snmp/ldap_agent_bin-ldap-agent.o: In function `init_ldap_agent': ldap/servers/snmp/ldap-agent.c:98: undefined reference to `CONTAINER_INSERT' collect2: ld returned 1 exit status make[3]: *** [ldap-agent-bin] Error 1 make[3]: Leaving directory `/usr/src/dsbuild/ds/ldapserver/work/fedora-ds-base-1.1.0' make[2]: *** [all] Error 2 make[2]: Leaving directory `/usr/src/dsbuild/ds/ldapserver/work/fedora-ds-base-1.1.0' make[1]: *** [build-work/fedora-ds-base-1.1.0/Makefile] Error 2 make[1]: Leaving directory `/usr/src/dsbuild/ds/ldapserver' make: *** [dep-../../ds/ldapserver] Error 2 make[
Any ideas?
Ryan Braun Informatics Operations Aviation and Defence Services Division Chief Information Officer Branch, Environment Canada CIV: (204) 833-2500x2824 CSN: 257-2824 FAX: (204) 833-2524 E-Mail: Ryan.Braun@ec.gc.ca
Ryan Braun wrote:
I've been working a little bit towards setting up a build environment for fds in debian. I've never actually built anything this complex, and in general my compiling experience is somewhat lacking. I'm trying to follow the write up at http://directory.fedoraproject.org/wiki/Building . Which states you have to build the mozilla components first. Here's where it gets interesting.
nspr and nss are already installed on the systems by default.
ii libnspr4-0d 1.8.0.15~pre080131b-0etch1 NetScape Portable Runtime Library ii libnspr4-dev 1.8.0.15~pre080131b-0etch1 Development files for the NetScape Portable ii libnss3-0d 1.8.0.15~pre080131b-0etch1 Network Security Service libraries ii libnss3-0d-dbg 1.8.0.15~pre080131b-0etch1 Development files for the Network Security S ii libnss3-dev 1.8.0.15~pre080131b-0etch1 Development files for the Network Security S ii libnss3-tools 1.8.0.15~pre080131b-0etch1 Network Security Service tools
But they have a goofy version number dictated by the xulrunner package.
http://packages.debian.org/source/etch/xulrunner
ywgbuild:/usr/src/dsbuild/meta/ds# pkg-config --modversion xulrunner-nss 1.8.0.13pre ywgbuild:/usr/src/dsbuild/meta/ds# pkg-config --modversion xulrunner-nspr 4.6.7
Now, I'm not sure why nspr is reporting it's true version number, while nss is reporting the 1.8.0 version when it should be something like 3.10 or 3.11.
Because the debian etch nspr and nss are not "true" standalone NSPR and NSS packages - they are designed to work with xulrunner. This is similar to the situation in RHEL4 and older Fedora when nspr and nss were "provided" by firefox, but not really useful for building other apps to use them.
And, I've been digging on the debian packages listings trying to figure out just which version nss is. Any idea how to pull the version number right out of the shared lib?
I'm not sure, but it looks to be a fairly recent NSS so that's ok.
Anyhow I moved on to try and build the next component, svrcore.
I had to do some fudging with pkg-config (ln -s xulrunner-nspr.pc nspr.pc and ln -s xulrunner-nss.pc nss.pc) in order for svrcore's configure to work (prolly a RH vs debian package naming issue).
The package for nspr should be called "nspr" (the real name) or "libnspr4" (the name of the package in debian). "xulrunner-nspr" is simply wrong.
At any rate, you don't have to jump through these hoops with ln -s. You can just use svrcore/configure --with-nspr-inc=/usr/include/nspr --with-nss-inc=/usr/include/nss I don't think you will have to use --with-nspr-lib and --with-nss-lib since it should just find them in /usr/lib.
Use svrcore/configure --help to see all of the available options.
So I ./configure --prefix=/opt/svrcore and it makes and make install's ok. I add /opt/svrcore/lib to ld.so.conf, and run ldconfig.
ywgbuild:/opt/svrcore# strings /etc/ld.so.cache |grep svrcore libsvrcore.so.0 /opt/svrcore/lib/libsvrcore.so.0 libsvrcore.so /opt/svrcore/lib/libsvrcore.so ywgbuild:/opt/svrcore# pkg-config --modversion svrcore 4.0.4
Next on the list is the mozldap library
ywgbuild:/usr/src/mozldap-6.0.5/mozilla/directory/c-sdk# ./configure --enable-clu --with-sasl --with-svrcore --enable-optimize --disable-debug --prefix=/opt/mozldap works ok. But then make throws this
gcc -o ntuserpin.o -c -pipe -ansi -Wall -pthread -O2 -fPIC -UDEBUG -DNDEBUG=1 -DXP_UNIX=1 -D_POSIX_SOURCE=1 -D_BSD_SOURCE=1 -D_SVID_SOURCE=1 -D_LARGEFILE64_SOURCE=1 -DHAVE_FCNTL_FILE_LOCKING=1 -DLINUX=1 -Dlinux=1 -Di386=1 -DHAVE_LCHOWN=1 -DHAVE_STRERROR=1 -DHAVE_GETADDRINFO=1 -DHAVE_GETNAMEINFO=1 -DHAVE_SASL=1 -DHAVE_SASL_OPTIONS=1 -DLDAP_SASLIO_HOOKS=1 -D_REENTRANT=1 -DNET_SSL -DNO_LIBLCACHE -DLDAP_REFERRALS -DNS_DOMESTIC -DLINUX2_0 -DLINUX1_2 -DLINUX2_1 -DLDAP_TOOL_ARGPIN -DLDAP_TOOL_PKCS11 -DFORCE_PR_LOG -D_PR_PTHREADS -UHAVE_CVAR_BUILT_ON_SEM -I/usr/include/nss -I/usr/include/nspr -I/usr/include/nspr -I/usr/include/sasl -I../../../../../dist/public/ldap -I../../../ldap/include -I/opt/svrcore/include -I/usr/include/nspr -I/usr/include/nss ntuserpin.c c++ -o bin/ldapdelete ldapdelete.o common.o convutf8.o fileurl.o ldaptool-sasl.o argpin.o ntuserpin.o -L../../../../../dist/./lib -lssldap60 -lprldap60 -lldap60 -lldif60 -L../../../../../dist/lib -lsvrcore -lssl3 -lnss3 -lsoftokn3 -L/usr/lib -lplds4 -lplc4 -lnspr4 -lpthread -ldl -lplc4 -lplds4 -lnspr4 -lsasl2 -ldl -lresolv -lpthread /usr/bin/ld: cannot find -lsvrcore collect2: ld returned 1 exit status make[2]: *** [bin/ldapdelete] Error 1
ywgbuild:/tmp# strace -o out ld -l svrcore ld: cannot find -lsvrcore ywgbuild:/tmp# grep open out open("/etc/ld.so.cache", O_RDONLY) = 3 open("/usr/lib/libbfd-2.17.so", O_RDONLY) = 3 open("/lib/tls/i686/cmov/libc.so.6", O_RDONLY) = 3 open("/usr/lib/locale/locale-archive", O_RDONLY|O_LARGEFILE) = 3 open("a.out", O_RDWR|O_CREAT|O_TRUNC|O_LARGEFILE, 0666) = 3 open("/usr/bin/../lib/libsvrcore.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/libsvrcore.a", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/usr/i486-linux-gnu/lib32/libsvrcore.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/usr/i486-linux-gnu/lib32/libsvrcore.a", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/usr/local/lib32/libsvrcore.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/usr/local/lib32/libsvrcore.a", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/lib32/libsvrcore.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/lib32/libsvrcore.a", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/usr/lib32/libsvrcore.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/usr/lib32/libsvrcore.a", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/usr/i486-linux-gnu/lib/libsvrcore.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/usr/i486-linux-gnu/lib/libsvrcore.a", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/usr/local/lib/libsvrcore.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/usr/local/lib/libsvrcore.a", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/lib/libsvrcore.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/lib/libsvrcore.a", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/usr/lib/libsvrcore.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/usr/lib/libsvrcore.a", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/usr/share/locale/locale.alias", O_RDONLY) = 4 open("/usr/share/locale/en_CA/LC_MESSAGES/ld.mo", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/share/locale/en/LC_MESSAGES/ld.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
So I'm not sure why ld doesn't want to look in /opt/svrcore/lib for the libsvrcore shared libs. it just looks in the default spots according to strace. Did I mess up somewhere?
As a quick fix I just symlinked /opt/svrcore/lib/libsvrcore.(a|so) to /usr/lib and it built.
Again, you don't have to do this, you can build mozldap with --with-svrcore=/opt/svrcore
mozldap doesn't make install apparently, but creates a dist directory
Take a look at dsbuild - dsbuild/ds/mozldap
symlinking all the built apps and libs. So I just copied /usr/src/mozldap-6.0.5/mozilla/dist to /opt/mozldap copying the files rather then preserving the symlinks.
add /opt/mozldap/lib to ld.so.conf && ldconfig ywgbuild:/opt/mozldap/bin# strings /etc/ld.so.cache |grep mozldap /opt/mozldap/lib/libssldap60.so /opt/mozldap/lib/libprldap60.so /opt/mozldap/lib/libldif60.so /opt/mozldap/lib/libldap60.so
So those libs look to be installed ok.
I then hacked up a fedora mozldap.pc (the make process didn't generate one, but the mozldap.pc.in file is there..) ywgbuild:/tmp/usr/lib/pkgconfig# cat mozldap.pc prefix=/opt/mozldap exec_prefix=${prefix} libdir=${prefix}/lib includedir=${prefix}/include bindir=${prefix}/bin major=6 minor=0 submin=5 libsuffix=60
Name: mozldap Description: Mozilla LDAP C SDK Version: 6.0.5 Requires: nspr >= 4.6 , nss >= 1.8.0.13pre Libs: -lssldap60 -lprldap60 -lldap60 Cflags: -I${includedir}
But again I end up in a spot where ld can't find the libs I just installed. So I symlynk'd everything in /opt/mozldap/lib to /usr/lib/ Then ld -lssldap60 -lprldap60 -lldap60 wouldn't complain about not being able to find the libs anymore.
Now for perl-ldap
export LDAPSDKINCDIR="/opt/mozldap/include" export LDAPSDKDIR="/opt/mozldap" export LDAPSDKLIBDIR="/opt/mozldap/lib" export NSPRINCDIR="/usr/include/nspr" export NSPRLIBDIR="/usr/lib" export NSSLIBDIR="/usr/lib"
make would puke complaining about missing ldap-standard.h
See how dsbuild/ds/perldap/Makefile does it.
ln -s /opt/mozldap/public/ldap/ldap-standard.h /opt/mozldap/include/ldap-standard.h
ywgbuild:/usr/src/perl-mozldap-1.5.2# make cc -c -I/opt/mozldap/include -D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS -DDEBIAN -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -DVERSION="1.5" -DXS_VERSION="1.5" -fPIC "-I/usr/lib/perl/5.8/CORE" -DUSE_SSL API.c Running Mkbootstrap for Mozilla::LDAP::API () chmod 644 API.bs rm -f blib/arch/auto/Mozilla/LDAP/API/API.so LD_RUN_PATH="/opt/mozldap/lib" LD_RUN_PATH=/opt/mozldap/lib cc -shared -L/usr/local/lib API.o -o blib/arch/auto/Mozilla/LDAP/API/API.so \ -L/opt/mozldap/lib -lssldap60 -lprldap60 -lldap60 -L/usr/lib -lssl3 -lnss3 -L/usr/lib -lplc4 -lnspr4 \
chmod 755 blib/arch/auto/Mozilla/LDAP/API/API.so cp API.bs blib/arch/auto/Mozilla/LDAP/API/API.bs chmod 644 blib/arch/auto/Mozilla/LDAP/API/API.bs Manifying blib/man3/Mozilla::LDAP::Conn.3pm Manifying blib/man3/Mozilla::LDAP::Utils.3pm Manifying blib/man3/Mozilla::LDAP::Entry.3pm Manifying blib/man3/Mozilla::LDAP::LDIF.3pm Manifying blib/man3/Mozilla::LDAP::API.3pm
So where I'm at now, using sysyem nspr and nss, built mozldap and installed to /opt/mozldap, built svrcore and installed to /opt/svrcore and built perl-ldap, not installing it anywhere.
So I figured I would give the newer dsbuild a shot at building the directory server. And it cranks away for a while then comes back with a message complaining about ldap agent and snmp. I initiated dsbuild with just a make command with no options.
You should have used SVRCORE_SOURCE=1 MOZLDAP_SOURCE=1 PERLDAP_SOURCE=1 by default, it will attempt to build and install into /opt/fedora-ds
Here are the snmp packages installed ywgbuild:/usr/src/dsbuild/meta/ds# dpkg -l|grep snmp ii libsnmp-base 5.2.3-7etch2 NET SNMP (Simple Network Management Protocol ii libsnmp-perl 5.2.3-7etch2 NET SNMP (Simple Network Management Protocol ii libsnmp9 5.2.3-7etch2 NET SNMP (Simple Network Management Protocol ii libsnmp9-dev 5.2.3-7etch2 NET SNMP (Simple Network Management Protocol
I've sent the last portion of the build process to pastebin if you want to have a look at
but the guts of the issue is this
3]: Entering directory `/usr/src/dsbuild/ds/ldapserver/work/fedora-ds-base-1.1.0' /bin/sh ./libtool --tag=CC --mode=link gcc -g -o ldap-agent-bin ldap/servers/snmp/ldap_agent_bin-main.o ldap/servers/snmp/ldap_agent_bin-ldap-agent.o ldap/servers/slapd/ldap_agent_bin-agtmmap.o -lssldap60 -lprldap60 -lldap60 -lldif60 -lsasl2 -lssl3 -lnss3 -lsoftokn3 -lplc4 -lplds4 -lnspr4 -L/usr/lib -lnetsnmpmibs -lnetsnmpagent -lnetsnmphelpers -lnetsnmp -lm -ldl -lsensors -lwrap -lwrap gcc -g -o ldap-agent-bin ldap/servers/snmp/ldap_agent_bin-main.o ldap/servers/snmp/ldap_agent_bin-ldap-agent.o ldap/servers/slapd/ldap_agent_bin-agtmmap.o -lssldap60 -lprldap60 -lldap60 -lldif60 /usr/lib/libsasl2.so -lresolv -lssl3 -lnss3 -lsoftokn3 -lplc4 -lplds4 -lnspr4 -L/usr/lib /usr/lib/libnetsnmpmibs.so /usr/lib/libnetsnmpagent.so /usr/lib/libnetsnmphelpers.so /usr/lib/libnetsnmp.so -lcrypto -lm -ldl -lsensors -lwrap ldap/servers/snmp/ldap_agent_bin-ldap-agent.o: In function `init_ldap_agent': ldap/servers/snmp/ldap-agent.c:98: undefined reference to `CONTAINER_INSERT' collect2: ld returned 1 exit status make[3]: *** [ldap-agent-bin] Error 1 make[3]: Leaving directory `/usr/src/dsbuild/ds/ldapserver/work/fedora-ds-base-1.1.0' make[2]: *** [all] Error 2 make[2]: Leaving directory `/usr/src/dsbuild/ds/ldapserver/work/fedora-ds-base-1.1.0' make[1]: *** [build-work/fedora-ds-base-1.1.0/Makefile] Error 2 make[1]: Leaving directory `/usr/src/dsbuild/ds/ldapserver' make: *** [dep-../../ds/ldapserver] Error 2 make[
Any ideas?
Looks like perhaps NETSNMP_USE_INLINE is not defined for some reason - it expects CONTAINER_INSERT to be defined inline, but it's not, and not defined in any libraries either. Looks like on debian it expects you to define NETSNMP_USE_INLINE=1 explicitly even though it looks as though it was built that way. On RHEL/Fedora, it looks like the NETSNMP_USE_INLINE is implicit.
Ryan Braun Informatics Operations Aviation and Defence Services Division Chief Information Officer Branch, Environment Canada CIV: (204) 833-2500x2824 CSN: 257-2824 FAX: (204) 833-2524 E-Mail: Ryan.Braun@ec.gc.ca
-- Fedora-directory-users mailing list Fedora-directory-users@redhat.com https://www.redhat.com/mailman/listinfo/fedora-directory-users
On Wednesday 20 February 2008 12:50 am, Rich Megginson wrote:
Now, I'm not sure why nspr is reporting it's true version number, while nss is reporting the 1.8.0 version when it should be something like 3.10 or 3.11.
Because the debian etch nspr and nss are not "true" standalone NSPR and NSS packages - they are designed to work with xulrunner. This is similar to the situation in RHEL4 and older Fedora when nspr and nss were "provided" by firefox, but not really useful for building other apps to use them.
And, I've been digging on the debian packages listings trying to figure out just which version nss is. Any idea how to pull the version number right out of the shared lib?
I'm not sure, but it looks to be a fairly recent NSS so that's ok.
This is good news.
Anyhow I moved on to try and build the next component, svrcore.
I had to do some fudging with pkg-config (ln -s xulrunner-nspr.pc nspr.pc and ln -s xulrunner-nss.pc nss.pc) in order for svrcore's configure to work (prolly a RH vs debian package naming issue).
The package for nspr should be called "nspr" (the real name) or "libnspr4" (the name of the package in debian). "xulrunner-nspr" is simply wrong.
At any rate, you don't have to jump through these hoops with ln -s. You can just use svrcore/configure --with-nspr-inc=/usr/include/nspr --with-nss-inc=/usr/include/nss I don't think you will have to use --with-nspr-lib and --with-nss-lib since it should just find them in /usr/lib.
Use svrcore/configure --help to see all of the available options.
When I try to recreate the build I'll definitely try this.
You should have used SVRCORE_SOURCE=1 MOZLDAP_SOURCE=1 PERLDAP_SOURCE=1 by default, it will attempt to build and install into /opt/fedora-ds
I'll try having dsbuild create those packages next time.
Here are the snmp packages installed ywgbuild:/usr/src/dsbuild/meta/ds# dpkg -l|grep snmp ii libsnmp-base 5.2.3-7etch2 NET SNMP (Simple Network Management Protocol ii libsnmp-perl 5.2.3-7etch2 NET SNMP (Simple Network Management Protocol ii libsnmp9 5.2.3-7etch2 NET SNMP (Simple Network Management Protocol ii libsnmp9-dev 5.2.3-7etch2 NET SNMP (Simple Network Management Protocol
I've sent the last portion of the build process to pastebin if you want to have a look at
but the guts of the issue is this
3]: Entering directory `/usr/src/dsbuild/ds/ldapserver/work/fedora-ds-base-1.1.0' /bin/sh ./libtool --tag=CC --mode=link gcc -g -o ldap-agent-bin ldap/servers/snmp/ldap_agent_bin-main.o ldap/servers/snmp/ldap_agent_bin-ldap-agent.o ldap/servers/slapd/ldap_agent_bin-agtmmap.o -lssldap60 -lprldap60 -lldap60 -lldif60 -lsasl2 -lssl3 -lnss3 -lsoftokn3 -lplc4 -lplds4 -lnspr4 -L/usr/lib -lnetsnmpmibs -lnetsnmpagent -lnetsnmphelpers -lnetsnmp -lm -ldl -lsensors -lwrap -lwrap gcc -g -o ldap-agent-bin ldap/servers/snmp/ldap_agent_bin-main.o ldap/servers/snmp/ldap_agent_bin-ldap-agent.o ldap/servers/slapd/ldap_agent_bin-agtmmap.o -lssldap60 -lprldap60 -lldap60 -lldif60 /usr/lib/libsasl2.so -lresolv -lssl3 -lnss3 -lsoftokn3 -lplc4 -lplds4 -lnspr4 -L/usr/lib /usr/lib/libnetsnmpmibs.so /usr/lib/libnetsnmpagent.so /usr/lib/libnetsnmphelpers.so /usr/lib/libnetsnmp.so -lcrypto -lm -ldl -lsensors -lwrap ldap/servers/snmp/ldap_agent_bin-ldap-agent.o: In function `init_ldap_agent': ldap/servers/snmp/ldap-agent.c:98: undefined reference to `CONTAINER_INSERT' collect2: ld returned 1 exit status make[3]: *** [ldap-agent-bin] Error 1 make[3]: Leaving directory `/usr/src/dsbuild/ds/ldapserver/work/fedora-ds-base-1.1.0' make[2]: *** [all] Error 2 make[2]: Leaving directory `/usr/src/dsbuild/ds/ldapserver/work/fedora-ds-base-1.1.0' make[1]: *** [build-work/fedora-ds-base-1.1.0/Makefile] Error 2 make[1]: Leaving directory `/usr/src/dsbuild/ds/ldapserver' make: *** [dep-../../ds/ldapserver] Error 2 make[
Any ideas?
Looks like perhaps NETSNMP_USE_INLINE is not defined for some reason - it expects CONTAINER_INSERT to be defined inline, but it's not, and not defined in any libraries either. Looks like on debian it expects you to define NETSNMP_USE_INLINE=1 explicitly even though it looks as though it was built that way. On RHEL/Fedora, it looks like the NETSNMP_USE_INLINE is implicit.
Where would I have to define that? I tried adding
DS_CONFIGURE_ARGS = NETSNMP_USE_INLINE=1
to ds.conf.mk and that didn't work.
Ryan Braun Informatics Operations Aviation and Defence Services Division Chief Information Officer Branch, Environment Canada CIV: (204) 833-2500x2824 CSN: 257-2824 FAX: (204) 833-2524 E-Mail: Ryan.Braun@ec.gc.ca
Ryan Braun wrote:
<snip> > > Use svrcore/configure --help to see all of the available options. >
When I try to recreate the build I'll definitely try this.
I'm hoping that we can get dsbuild to the point where it will hide this stuff and "just work".
You should have used SVRCORE_SOURCE=1 MOZLDAP_SOURCE=1 PERLDAP_SOURCE=1 by default, it will attempt to build and install into /opt/fedora-ds
I'll try having dsbuild create those packages next time.
BTW, thanks for going through this process, and I apologize that I haven't had time to properly document how to use dsbuild. Would you be able to document what you've found, perhaps in the wiki on the Debian/Ubuntu page? If not, then just keep the emails coming.
Here are the snmp packages installed ywgbuild:/usr/src/dsbuild/meta/ds# dpkg -l|grep snmp ii libsnmp-base 5.2.3-7etch2 NET SNMP (Simple Network Management Protocol ii libsnmp-perl 5.2.3-7etch2 NET SNMP (Simple Network Management Protocol ii libsnmp9 5.2.3-7etch2 NET SNMP (Simple Network Management Protocol ii libsnmp9-dev 5.2.3-7etch2 NET SNMP (Simple Network Management Protocol
I've sent the last portion of the build process to pastebin if you want to have a look at
but the guts of the issue is this
3]: Entering directory `/usr/src/dsbuild/ds/ldapserver/work/fedora-ds-base-1.1.0' /bin/sh ./libtool --tag=CC --mode=link gcc -g -o ldap-agent-bin ldap/servers/snmp/ldap_agent_bin-main.o ldap/servers/snmp/ldap_agent_bin-ldap-agent.o ldap/servers/slapd/ldap_agent_bin-agtmmap.o -lssldap60 -lprldap60 -lldap60 -lldif60 -lsasl2 -lssl3 -lnss3 -lsoftokn3 -lplc4 -lplds4 -lnspr4 -L/usr/lib -lnetsnmpmibs -lnetsnmpagent -lnetsnmphelpers -lnetsnmp -lm -ldl -lsensors -lwrap -lwrap gcc -g -o ldap-agent-bin ldap/servers/snmp/ldap_agent_bin-main.o ldap/servers/snmp/ldap_agent_bin-ldap-agent.o ldap/servers/slapd/ldap_agent_bin-agtmmap.o -lssldap60 -lprldap60 -lldap60 -lldif60 /usr/lib/libsasl2.so -lresolv -lssl3 -lnss3 -lsoftokn3 -lplc4 -lplds4 -lnspr4 -L/usr/lib /usr/lib/libnetsnmpmibs.so /usr/lib/libnetsnmpagent.so /usr/lib/libnetsnmphelpers.so /usr/lib/libnetsnmp.so -lcrypto -lm -ldl -lsensors -lwrap ldap/servers/snmp/ldap_agent_bin-ldap-agent.o: In function `init_ldap_agent': ldap/servers/snmp/ldap-agent.c:98: undefined reference to `CONTAINER_INSERT' collect2: ld returned 1 exit status make[3]: *** [ldap-agent-bin] Error 1 make[3]: Leaving directory `/usr/src/dsbuild/ds/ldapserver/work/fedora-ds-base-1.1.0' make[2]: *** [all] Error 2 make[2]: Leaving directory `/usr/src/dsbuild/ds/ldapserver/work/fedora-ds-base-1.1.0' make[1]: *** [build-work/fedora-ds-base-1.1.0/Makefile] Error 2 make[1]: Leaving directory `/usr/src/dsbuild/ds/ldapserver' make: *** [dep-../../ds/ldapserver] Error 2 make[
Any ideas?
Looks like perhaps NETSNMP_USE_INLINE is not defined for some reason - it expects CONTAINER_INSERT to be defined inline, but it's not, and not defined in any libraries either. Looks like on debian it expects you to define NETSNMP_USE_INLINE=1 explicitly even though it looks as though it was built that way. On RHEL/Fedora, it looks like the NETSNMP_USE_INLINE is implicit.
Where would I have to define that? I tried adding
DS_CONFIGURE_ARGS = NETSNMP_USE_INLINE=1
Try adding DS_CONFIGURE_ENV += CPPFLAGS=-DNETSNMP_USE_INLINE=1 to somewhere around line 21 of dsbuild/ds/Makefile
I think the proper solution will be to modify the ldapserver code to allow for net-snmp specific compiler and linker flags. But this will at least make the definition as localized as possible.
to ds.conf.mk and that didn't work.
Ryan Braun Informatics Operations Aviation and Defence Services Division Chief Information Officer Branch, Environment Canada CIV: (204) 833-2500x2824 CSN: 257-2824 FAX: (204) 833-2524 E-Mail: Ryan.Braun@ec.gc.ca
-- Fedora-directory-users mailing list Fedora-directory-users@redhat.com https://www.redhat.com/mailman/listinfo/fedora-directory-users
On Wednesday 20 February 2008 5:46 pm, Rich Megginson wrote:
Ryan Braun wrote:
<snip>
Use svrcore/configure --help to see all of the available options.
When I try to recreate the build I'll definitely try this.
I'm hoping that we can get dsbuild to the point where it will hide this stuff and "just work".
I just tried it starting from scratch and it built svrcore, perl-ldap and mozldap for me without a hitch. Well aside from me not having the required -dev packages on this box I tried the last attempt :)
You should have used SVRCORE_SOURCE=1 MOZLDAP_SOURCE=1 PERLDAP_SOURCE=1 by default, it will attempt to build and install into /opt/fedora-ds
I'll try having dsbuild create those packages next time.
BTW, thanks for going through this process, and I apologize that I haven't had time to properly document how to use dsbuild. Would you be able to document what you've found, perhaps in the wiki on the Debian/Ubuntu page? If not, then just keep the emails coming.
Once I get it built and working I'd be more then happy to whip up a debian page on the wiki. I'm trying to keep some detailed notes on the process so I should have something to add to the page.
Looks like perhaps NETSNMP_USE_INLINE is not defined for some reason - it expects CONTAINER_INSERT to be defined inline, but it's not, and not defined in any libraries either. Looks like on debian it expects you to define NETSNMP_USE_INLINE=1 explicitly even though it looks as though it was built that way. On RHEL/Fedora, it looks like the NETSNMP_USE_INLINE is implicit.
Where would I have to define that? I tried adding
DS_CONFIGURE_ARGS = NETSNMP_USE_INLINE=1
Try adding DS_CONFIGURE_ENV += CPPFLAGS=-DNETSNMP_USE_INLINE=1 to somewhere around line 21 of dsbuild/ds/Makefile
I think the proper solution will be to modify the ldapserver code to allow for net-snmp specific compiler and linker flags. But this will at least make the definition as localized as possible.
I added that line to /usr/src/dsbuild/ds/ldapserver/Makefile. Which is what I *think* you meant. I then tried to start the dsbuild process over having dsbuild handle svrcore, perl/mozldap and it errors at the same point again.
But I could have added that line to the wrong file :)
infinity:/usr/src/dsbuild/meta/ds# make SVRCORE_SOURCE=1 MOZLDAP_SOURCE=1 PERLDAP_SOURCE=1 [===== NOW BUILDING: ds-1.1.0 =====] [fetch] complete for ds. [checksum] complete for ds. [extract] complete for ds. [patch] complete for ds. ==> Building ds/svrcore as a dependency ==> Building ds/mozldap as a dependency ==> Building ds/perldap as a dependency ==> Building ds/ldapserver as a dependency cat: /etc/redhat-release: No such file or directory make[1]: Entering directory `/usr/src/dsbuild/ds/ldapserver' [===== NOW BUILDING: fedora-ds-base-1.1.0 =====] [fetch] complete for fedora-ds-base. [checksum] complete for fedora-ds-base. [extract] complete for fedora-ds-base. [patch] complete for fedora-ds-base. [configure] complete for fedora-ds-base. ==> Running make in work/fedora-ds-base-1.1.0 make[2]: Entering directory `/usr/src/dsbuild/ds/ldapserver/work/fedora-ds-base-1.1.0' make all-am make[3]: Entering directory `/usr/src/dsbuild/ds/ldapserver/work/fedora-ds-base-1.1.0' /bin/sh ./libtool --tag=CC --mode=link gcc -g -o ldap-agent-bin ldap/servers/snmp/ldap_agent_bin-main.o ldap/servers/snmp/ldap_agent_bin-ldap-agent.o ldap/servers/slapd/ldap_agent_bin-agtmmap.o -L/opt/dirsrv/lib -lssldap60 -lprldap60 -lldap60 -lldif60 -lsasl2 -lssl3 -lnss3 -lsoftokn3 -lplc4 -lplds4 -lnspr4 -L/usr/lib -lnetsnmpmibs -lnetsnmpagent -lnetsnmphelpers -lnetsnmp -lm -ldl -lsensors -lwrap -lwrap gcc -g -o ldap-agent-bin ldap/servers/snmp/ldap_agent_bin-main.o ldap/servers/snmp/ldap_agent_bin-ldap-agent.o ldap/servers/slapd/ldap_agent_bin-agtmmap.o -L/opt/dirsrv/lib -lssldap60 -lprldap60 -lldap60 -lldif60 /usr/lib/libsasl2.so -lresolv -lssl3 -lnss3 -lsoftokn3 -lplc4 -lplds4 -lnspr4 -L/usr/lib /usr/lib/libnetsnmpmibs.so /usr/lib/libnetsnmpagent.so /usr/lib/libnetsnmphelpers.so /usr/lib/libnetsnmp.so -lcrypto -lm -ldl -lsensors -lwrap ldap/servers/snmp/ldap_agent_bin-ldap-agent.o: In function `init_ldap_agent': ldap/servers/snmp/ldap-agent.c:98: undefined reference to `CONTAINER_INSERT' collect2: ld returned 1 exit status make[3]: *** [ldap-agent-bin] Error 1 make[3]: Leaving directory `/usr/src/dsbuild/ds/ldapserver/work/fedora-ds-base-1.1.0' make[2]: *** [all] Error 2 make[2]: Leaving directory `/usr/src/dsbuild/ds/ldapserver/work/fedora-ds-base-1.1.0' make[1]: *** [build-work/fedora-ds-base-1.1.0/Makefile] Error 2 make[1]: Leaving directory `/usr/src/dsbuild/ds/ldapserver' make: *** [dep-../../ds/ldapserver] Error 2
Ryan Braun wrote:
<snip>
Once I get it built and working I'd be more then happy to whip up a debian page on the wiki. I'm trying to keep some detailed notes on the process so I should have something to add to the page.
Thanks!
Looks like perhaps NETSNMP_USE_INLINE is not defined for some reason - it expects CONTAINER_INSERT to be defined inline, but it's not, and not defined in any libraries either. Looks like on debian it expects you to define NETSNMP_USE_INLINE=1 explicitly even though it looks as though it was built that way. On RHEL/Fedora, it looks like the NETSNMP_USE_INLINE is implicit.
Where would I have to define that? I tried adding
DS_CONFIGURE_ARGS = NETSNMP_USE_INLINE=1
Try adding DS_CONFIGURE_ENV += CPPFLAGS=-DNETSNMP_USE_INLINE=1 to somewhere around line 21 of dsbuild/ds/Makefile
I think the proper solution will be to modify the ldapserver code to allow for net-snmp specific compiler and linker flags. But this will at least make the definition as localized as possible.
I added that line to /usr/src/dsbuild/ds/ldapserver/Makefile. Which is what I *think* you meant.
Yes, that's what I meant :-)
I then tried to start the dsbuild process over having dsbuild handle svrcore, perl/mozldap and it errors at the same point again.
Ok. You'll have to remove the cookies and the code to force it to start over again from the configure stage: rm -rf dsbuild/ds/ldapserver/work dsbuild/ds/ldapserver/cookies Then do make -C dsbuild/meta/ds SVRCORE_SOURCE=1 MOZLDAP_SOURCE=1 PERLDAP_SOURCE=1 again.
But I could have added that line to the wrong file :)
infinity:/usr/src/dsbuild/meta/ds# make SVRCORE_SOURCE=1 MOZLDAP_SOURCE=1 PERLDAP_SOURCE=1 [===== NOW BUILDING: ds-1.1.0 =====] [fetch] complete for ds. [checksum] complete for ds. [extract] complete for ds. [patch] complete for ds. ==> Building ds/svrcore as a dependency ==> Building ds/mozldap as a dependency ==> Building ds/perldap as a dependency ==> Building ds/ldapserver as a dependency cat: /etc/redhat-release: No such file or directory make[1]: Entering directory `/usr/src/dsbuild/ds/ldapserver' [===== NOW BUILDING: fedora-ds-base-1.1.0 =====] [fetch] complete for fedora-ds-base. [checksum] complete for fedora-ds-base. [extract] complete for fedora-ds-base. [patch] complete for fedora-ds-base. [configure] complete for fedora-ds-base. ==> Running make in work/fedora-ds-base-1.1.0 make[2]: Entering directory `/usr/src/dsbuild/ds/ldapserver/work/fedora-ds-base-1.1.0' make all-am make[3]: Entering directory `/usr/src/dsbuild/ds/ldapserver/work/fedora-ds-base-1.1.0' /bin/sh ./libtool --tag=CC --mode=link gcc -g -o ldap-agent-bin ldap/servers/snmp/ldap_agent_bin-main.o ldap/servers/snmp/ldap_agent_bin-ldap-agent.o ldap/servers/slapd/ldap_agent_bin-agtmmap.o -L/opt/dirsrv/lib -lssldap60 -lprldap60 -lldap60 -lldif60 -lsasl2 -lssl3 -lnss3 -lsoftokn3 -lplc4 -lplds4 -lnspr4 -L/usr/lib -lnetsnmpmibs -lnetsnmpagent -lnetsnmphelpers -lnetsnmp -lm -ldl -lsensors -lwrap -lwrap gcc -g -o ldap-agent-bin ldap/servers/snmp/ldap_agent_bin-main.o ldap/servers/snmp/ldap_agent_bin-ldap-agent.o ldap/servers/slapd/ldap_agent_bin-agtmmap.o -L/opt/dirsrv/lib -lssldap60 -lprldap60 -lldap60 -lldif60 /usr/lib/libsasl2.so -lresolv -lssl3 -lnss3 -lsoftokn3 -lplc4 -lplds4 -lnspr4 -L/usr/lib /usr/lib/libnetsnmpmibs.so /usr/lib/libnetsnmpagent.so /usr/lib/libnetsnmphelpers.so /usr/lib/libnetsnmp.so -lcrypto -lm -ldl -lsensors -lwrap ldap/servers/snmp/ldap_agent_bin-ldap-agent.o: In function `init_ldap_agent': ldap/servers/snmp/ldap-agent.c:98: undefined reference to `CONTAINER_INSERT' collect2: ld returned 1 exit status make[3]: *** [ldap-agent-bin] Error 1 make[3]: Leaving directory `/usr/src/dsbuild/ds/ldapserver/work/fedora-ds-base-1.1.0' make[2]: *** [all] Error 2 make[2]: Leaving directory `/usr/src/dsbuild/ds/ldapserver/work/fedora-ds-base-1.1.0' make[1]: *** [build-work/fedora-ds-base-1.1.0/Makefile] Error 2 make[1]: Leaving directory `/usr/src/dsbuild/ds/ldapserver' make: *** [dep-../../ds/ldapserver] Error 2
-- Fedora-directory-users mailing list Fedora-directory-users@redhat.com https://www.redhat.com/mailman/listinfo/fedora-directory-users
On Wednesday 20 February 2008 6:22 pm, Rich Megginson wrote:
Where would I have to define that? I tried adding
DS_CONFIGURE_ARGS = NETSNMP_USE_INLINE=1
Try adding DS_CONFIGURE_ENV += CPPFLAGS=-DNETSNMP_USE_INLINE=1 to somewhere around line 21 of dsbuild/ds/Makefile
I think the proper solution will be to modify the ldapserver code to allow for net-snmp specific compiler and linker flags. But this will at least make the definition as localized as possible.
I added that line to /usr/src/dsbuild/ds/ldapserver/Makefile. Which is what I *think* you meant.
Yes, that's what I meant :-)
I then tried to start the dsbuild process over having dsbuild handle svrcore, perl/mozldap and it errors at the same point again.
Ok. You'll have to remove the cookies and the code to force it to start over again from the configure stage: rm -rf dsbuild/ds/ldapserver/work dsbuild/ds/ldapserver/cookies Then do make -C dsbuild/meta/ds SVRCORE_SOURCE=1 MOZLDAP_SOURCE=1 PERLDAP_SOURCE=1 again.
It looks like it bails with the same error. I'll try building the snmp source for giggles, but we'll see what to try next to fix the original issue.
Here is /usr/src/dsbuild/ds/ldapserver/Makefile
{{{ include ../../objdirname.mk
GARNAME = fedora-ds-base GARVERSION = 1.1.0 CATEGORIES = ds PATCHFILES =
PKGDIR = $(ABS_GARDIR)/$(CATEGORIES)/ldapserver/work/pkg
ifdef USE_CVS CVSMODULES = ldapserver else DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2 endif
LIBDEPS =
DESCRIPTION = Fedora Directory Server (base)
CONFIGURE_ARGS = $(DS_CONFIGURE_ARGS) --enable-bundle DS_CONFIGURE_ENV += CPPFLAGS=-DNETSNMP_USE_INLINE=1
CONFIGURE_SCRIPTS = $(WORKSRC)/configure BUILD_SCRIPTS = $(WORKSRC)/Makefile INSTALL_SCRIPTS = $(WORKSRC)/Makefile
ifdef USE_CVS post-extract: extract-cvs endif
# this is our "custom" patch target ifdef MYPATCH post-patch: cat $(addprefix download/,$(MYPATCH)) | ( cd work/$(GARNAME)-$(GARVERSION) ; patch -p1 ) $(MAKECOOKIE) endif
include ../../gar.conf.mk
include ../category.mk }}}
and the tail end of the build.
/bin/sh ./libtool --tag=CC --mode=link gcc -g -o infadd-bin ldap/servers/slapd/tools/rsearch/infadd_bin-addthread.o ldap/servers/slapd/tools/rsearch/infadd_bin-infadd.o ldap/servers/slapd/tools/rsearch/infadd_bin-nametable.o -lplc4 -lplds4 -lnspr4 -lssl3 -lnss3 -lsoftokn3 -L/opt/dirsrv/lib -lssldap60 -lprldap60 -lldap60 -lldif60 -lsasl2 gcc -g -o infadd-bin ldap/servers/slapd/tools/rsearch/infadd_bin-addthread.o ldap/servers/slapd/tools/rsearch/infadd_bin-infadd.o ldap/servers/slapd/tools/rsearch/infadd_bin-nametable.o -lplc4 -lplds4 -lnspr4 -lssl3 -lnss3 -lsoftokn3 -L/opt/dirsrv/lib -lssldap60 -lprldap60 -lldap60 -lldif60 /usr/lib/libsasl2.so -ldl -lresolv if gcc -DHAVE_CONFIG_H -I. -I. -I. -DBUILD_NUM="2008.051.1835" -I./ldap/include -I./ldap/servers/slapd -I./include -I. -DLOCALSTATEDIR=""/opt/dirsrv/var"" -DSYSCONFDIR=""/opt/dirsrv/etc"" -DLIBDIR=""/opt/dirsrv/lib"" -DBINDIR=""/opt/dirsrv/bin"" -DDATADIR=""/opt/dirsrv/share"" -DDOCDIR="""" -DSBINDIR=""/opt/dirsrv/sbin"" -DPLUGINDIR=""/opt/dirsrv/lib/dirsrv/plugins"" -DTEMPLATEDIR=""/opt/dirsrv/share/dirsrv/data"" -I/usr/include -I/opt/dirsrv/include -I/usr/include/nss -I/usr/include/nspr -I/usr/include/nspr -g -MT ldap/servers/snmp/ldap_agent_bin-main.o -MD -MP -MF "ldap/servers/snmp/.deps/ldap_agent_bin-main.Tpo" -c -o ldap/servers/snmp/ldap_agent_bin-main.o `test -f 'ldap/servers/snmp/main.c' || echo './'`ldap/servers/snmp/main.c; \ then mv -f "ldap/servers/snmp/.deps/ldap_agent_bin-main.Tpo" "ldap/servers/snmp/.deps/ldap_agent_bin-main.Po"; else rm -f "ldap/servers/snmp/.deps/ldap_agent_bin-main.Tpo"; exit 1; fi In file included from ldap/servers/snmp/../slapd/agtmmap.h:40, from ldap/servers/snmp/ldap-agent.h:56, from ldap/servers/snmp/main.c:49: ./config.h:295:1: warning: "PACKAGE_BUGREPORT" redefined In file included from ldap/servers/snmp/ldap-agent.h:50, from ldap/servers/snmp/main.c:49: /usr/include/net-snmp/net-snmp-config.h:946:1: warning: this is the location of the previous definition In file included from ldap/servers/snmp/../slapd/agtmmap.h:40, from ldap/servers/snmp/ldap-agent.h:56, from ldap/servers/snmp/main.c:49: ./config.h:298:1: warning: "PACKAGE_NAME" redefined In file included from ldap/servers/snmp/ldap-agent.h:50, from ldap/servers/snmp/main.c:49: /usr/include/net-snmp/net-snmp-config.h:949:1: warning: this is the location of the previous definition In file included from ldap/servers/snmp/../slapd/agtmmap.h:40, from ldap/servers/snmp/ldap-agent.h:56, from ldap/servers/snmp/main.c:49: ./config.h:301:1: warning: "PACKAGE_STRING" redefined In file included from ldap/servers/snmp/ldap-agent.h:50, from ldap/servers/snmp/main.c:49: /usr/include/net-snmp/net-snmp-config.h:952:1: warning: this is the location of the previous definition In file included from ldap/servers/snmp/../slapd/agtmmap.h:40, from ldap/servers/snmp/ldap-agent.h:56, from ldap/servers/snmp/main.c:49: ./config.h:304:1: warning: "PACKAGE_TARNAME" redefined In file included from ldap/servers/snmp/ldap-agent.h:50, from ldap/servers/snmp/main.c:49: /usr/include/net-snmp/net-snmp-config.h:955:1: warning: this is the location of the previous definition In file included from ldap/servers/snmp/../slapd/agtmmap.h:40, from ldap/servers/snmp/ldap-agent.h:56, from ldap/servers/snmp/main.c:49: ./config.h:307:1: warning: "PACKAGE_VERSION" redefined In file included from ldap/servers/snmp/ldap-agent.h:50, from ldap/servers/snmp/main.c:49: /usr/include/net-snmp/net-snmp-config.h:958:1: warning: this is the location of the previous definition if gcc -DHAVE_CONFIG_H -I. -I. -I. -DBUILD_NUM="2008.051.1835" -I./ldap/include -I./ldap/servers/slapd -I./include -I. -DLOCALSTATEDIR=""/opt/dirsrv/var"" -DSYSCONFDIR=""/opt/dirsrv/etc"" -DLIBDIR=""/opt/dirsrv/lib"" -DBINDIR=""/opt/dirsrv/bin"" -DDATADIR=""/opt/dirsrv/share"" -DDOCDIR="""" -DSBINDIR=""/opt/dirsrv/sbin"" -DPLUGINDIR=""/opt/dirsrv/lib/dirsrv/plugins"" -DTEMPLATEDIR=""/opt/dirsrv/share/dirsrv/data"" -I/usr/include -I/opt/dirsrv/include -I/usr/include/nss -I/usr/include/nspr -I/usr/include/nspr -g -MT ldap/servers/snmp/ldap_agent_bin-ldap-agent.o -MD -MP -MF "ldap/servers/snmp/.deps/ldap_agent_bin-ldap-agent.Tpo" -c -o ldap/servers/snmp/ldap_agent_bin-ldap-agent.o `test -f 'ldap/servers/snmp/ldap-agent.c' || echo './'`ldap/servers/snmp/ldap-agent.c; \ then mv -f "ldap/servers/snmp/.deps/ldap_agent_bin-ldap-agent.Tpo" "ldap/servers/snmp/.deps/ldap_agent_bin-ldap-agent.Po"; else rm -f "ldap/servers/snmp/.deps/ldap_agent_bin-ldap-agent.Tpo"; exit 1; fi In file included from ldap/servers/snmp/../slapd/agtmmap.h:40, from ldap/servers/snmp/ldap-agent.h:56, from ldap/servers/snmp/ldap-agent.c:45: ./config.h:295:1: warning: "PACKAGE_BUGREPORT" redefined In file included from ldap/servers/snmp/ldap-agent.h:50, from ldap/servers/snmp/ldap-agent.c:45: /usr/include/net-snmp/net-snmp-config.h:946:1: warning: this is the location of the previous definition In file included from ldap/servers/snmp/../slapd/agtmmap.h:40, from ldap/servers/snmp/ldap-agent.h:56, from ldap/servers/snmp/ldap-agent.c:45: ./config.h:298:1: warning: "PACKAGE_NAME" redefined In file included from ldap/servers/snmp/ldap-agent.h:50, from ldap/servers/snmp/ldap-agent.c:45: /usr/include/net-snmp/net-snmp-config.h:949:1: warning: this is the location of the previous definition In file included from ldap/servers/snmp/../slapd/agtmmap.h:40, from ldap/servers/snmp/ldap-agent.h:56, from ldap/servers/snmp/ldap-agent.c:45: ./config.h:301:1: warning: "PACKAGE_STRING" redefined In file included from ldap/servers/snmp/ldap-agent.h:50, from ldap/servers/snmp/ldap-agent.c:45: /usr/include/net-snmp/net-snmp-config.h:952:1: warning: this is the location of the previous definition In file included from ldap/servers/snmp/../slapd/agtmmap.h:40, from ldap/servers/snmp/ldap-agent.h:56, from ldap/servers/snmp/ldap-agent.c:45: ./config.h:304:1: warning: "PACKAGE_TARNAME" redefined In file included from ldap/servers/snmp/ldap-agent.h:50, from ldap/servers/snmp/ldap-agent.c:45: /usr/include/net-snmp/net-snmp-config.h:955:1: warning: this is the location of the previous definition In file included from ldap/servers/snmp/../slapd/agtmmap.h:40, from ldap/servers/snmp/ldap-agent.h:56, from ldap/servers/snmp/ldap-agent.c:45: ./config.h:307:1: warning: "PACKAGE_VERSION" redefined In file included from ldap/servers/snmp/ldap-agent.h:50, from ldap/servers/snmp/ldap-agent.c:45: /usr/include/net-snmp/net-snmp-config.h:958:1: warning: this is the location of the previous definition if gcc -DHAVE_CONFIG_H -I. -I. -I. -DBUILD_NUM="2008.051.1835" -I./ldap/include -I./ldap/servers/slapd -I./include -I. -DLOCALSTATEDIR=""/opt/dirsrv/var"" -DSYSCONFDIR=""/opt/dirsrv/etc"" -DLIBDIR=""/opt/dirsrv/lib"" -DBINDIR=""/opt/dirsrv/bin"" -DDATADIR=""/opt/dirsrv/share"" -DDOCDIR="""" -DSBINDIR=""/opt/dirsrv/sbin"" -DPLUGINDIR=""/opt/dirsrv/lib/dirsrv/plugins"" -DTEMPLATEDIR=""/opt/dirsrv/share/dirsrv/data"" -I/usr/include -I/opt/dirsrv/include -I/usr/include/nss -I/usr/include/nspr -I/usr/include/nspr -g -MT ldap/servers/slapd/ldap_agent_bin-agtmmap.o -MD -MP -MF "ldap/servers/slapd/.deps/ldap_agent_bin-agtmmap.Tpo" -c -o ldap/servers/slapd/ldap_agent_bin-agtmmap.o `test -f 'ldap/servers/slapd/agtmmap.c' || echo './'`ldap/servers/slapd/agtmmap.c; \ then mv -f "ldap/servers/slapd/.deps/ldap_agent_bin-agtmmap.Tpo" "ldap/servers/slapd/.deps/ldap_agent_bin-agtmmap.Po"; else rm -f "ldap/servers/slapd/.deps/ldap_agent_bin-agtmmap.Tpo"; exit 1; fi /bin/sh ./libtool --tag=CC --mode=link gcc -g -o ldap-agent-bin ldap/servers/snmp/ldap_agent_bin-main.o ldap/servers/snmp/ldap_agent_bin-ldap-agent.o ldap/servers/slapd/ldap_agent_bin-agtmmap.o -L/opt/dirsrv/lib -lssldap60 -lprldap60 -lldap60 -lldif60 -lsasl2 -lssl3 -lnss3 -lsoftokn3 -lplc4 -lplds4 -lnspr4 -L/usr/lib -lnetsnmpmibs -lnetsnmpagent -lnetsnmphelpers -lnetsnmp -lm -ldl -lsensors -lwrap -lwrap gcc -g -o ldap-agent-bin ldap/servers/snmp/ldap_agent_bin-main.o ldap/servers/snmp/ldap_agent_bin-ldap-agent.o ldap/servers/slapd/ldap_agent_bin-agtmmap.o -L/opt/dirsrv/lib -lssldap60 -lprldap60 -lldap60 -lldif60 /usr/lib/libsasl2.so -lresolv -lssl3 -lnss3 -lsoftokn3 -lplc4 -lplds4 -lnspr4 -L/usr/lib /usr/lib/libnetsnmpmibs.so /usr/lib/libnetsnmpagent.so /usr/lib/libnetsnmphelpers.so /usr/lib/libnetsnmp.so -lcrypto -lm -ldl -lsensors -lwrap ldap/servers/snmp/ldap_agent_bin-ldap-agent.o: In function `init_ldap_agent': ldap/servers/snmp/ldap-agent.c:98: undefined reference to `CONTAINER_INSERT' collect2: ld returned 1 exit status make[3]: *** [ldap-agent-bin] Error 1 make[3]: Leaving directory `/usr/src/dsbuild/ds/ldapserver/work/fedora-ds-base-1.1.0' make[2]: *** [all] Error 2 make[2]: Leaving directory `/usr/src/dsbuild/ds/ldapserver/work/fedora-ds-base-1.1.0' make[1]: *** [build-work/fedora-ds-base-1.1.0/Makefile] Error 2 make[1]: Leaving directory `/usr/src/dsbuild/ds/ldapserver' make: *** [dep-../../ds/ldapserver] Error 2 make: Leaving directory `/usr/src/dsbuild/meta/ds'
Ryan Braun wrote:
On Wednesday 20 February 2008 6:22 pm, Rich Megginson wrote:
Where would I have to define that? I tried adding
DS_CONFIGURE_ARGS = NETSNMP_USE_INLINE=1
Try adding DS_CONFIGURE_ENV += CPPFLAGS=-DNETSNMP_USE_INLINE=1 to somewhere around line 21 of dsbuild/ds/Makefile
I think the proper solution will be to modify the ldapserver code to allow for net-snmp specific compiler and linker flags. But this will at least make the definition as localized as possible.
I added that line to /usr/src/dsbuild/ds/ldapserver/Makefile. Which is what I *think* you meant.
Yes, that's what I meant :-)
I then tried to start the dsbuild process over having dsbuild handle svrcore, perl/mozldap and it errors at the same point again.
Ok. You'll have to remove the cookies and the code to force it to start over again from the configure stage: rm -rf dsbuild/ds/ldapserver/work dsbuild/ds/ldapserver/cookies Then do make -C dsbuild/meta/ds SVRCORE_SOURCE=1 MOZLDAP_SOURCE=1 PERLDAP_SOURCE=1 again.
It looks like it bails with the same error. I'll try building the snmp source for giggles, but we'll see what to try next to fix the original issue.
Here is /usr/src/dsbuild/ds/ldapserver/Makefile
{{{ include ../../objdirname.mk
GARNAME = fedora-ds-base GARVERSION = 1.1.0 CATEGORIES = ds PATCHFILES =
PKGDIR = $(ABS_GARDIR)/$(CATEGORIES)/ldapserver/work/pkg
ifdef USE_CVS CVSMODULES = ldapserver else DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2 endif
LIBDEPS =
DESCRIPTION = Fedora Directory Server (base)
CONFIGURE_ARGS = $(DS_CONFIGURE_ARGS) --enable-bundle DS_CONFIGURE_ENV += CPPFLAGS=-DNETSNMP_USE_INLINE=1
Try CONFIGURE_ENV instead of DS_CONFIGURE_ENV - then remove work and cookies and try again <snip>
On Wednesday 20 February 2008 9:05 pm, Rich Megginson wrote:
CONFIGURE_ARGS = $(DS_CONFIGURE_ARGS) --enable-bundle DS_CONFIGURE_ENV += CPPFLAGS=-DNETSNMP_USE_INLINE=1
Try CONFIGURE_ENV instead of DS_CONFIGURE_ENV - then remove work and cookies and try again
Ok, that worked. the ldapserver finished building. Next stop on the bug the the bug bashing train.
make[2]: *** [http//directory.fedoraproject.org/sources/ldapjdk.jar] Error 1 make[2]: Leaving directory `/usr/src/dsbuild/ds/ldapjdk' ==> Trying http//directory.fedoraproject.org/download/ldapjdk.jar make[2]: Entering directory `/usr/src/dsbuild/ds/ldapjdk' --15:41:29-- http://directory.fedoraproject.org/download/ldapjdk.jar => `download/ldapjdk.jar' Resolving xxxproxy.xxx.ec.gc.ca... Connecting to xxxproxy.xxx.ec.gc.ca||:8080... connected. Proxy request sent, awaiting response... 200 OK Length: 264,659 (258K) [application/x-java-archive]
100%[===============================================================================================================================================================================================>] 264,659 150.17K/s
15:41:31 (149.65 KB/s) - `download/ldapjdk.jar' saved [264659/264659]
make[2]: Leaving directory `/usr/src/dsbuild/ds/ldapjdk' [fetch] complete for ldapjdk. install -d cookies ==> Running checksum on ldapjdk.jar 200020a78145bda8401b71cd08c7756c download/ldapjdk.jar file ldapjdk.jar passes checksum test! [checksum] complete for ldapjdk. install -d work [extract] complete for ldapjdk. install -d work/ldapjdk-4.17 [patch] complete for ldapjdk. [configure] complete for ldapjdk. [build] complete for ldapjdk. mkdir -p cookies/. && date >> cookies/install-custom [install] complete for ldapjdk. make[1]: Leaving directory `/usr/src/dsbuild/ds/ldapjdk' ==> Building ds/jss as a dependency make: *** ../../ds/jss: No such file or directory. Stop. make: *** [dep-../../ds/jss] Error 2 ywgbuild:/usr/src/dsbuild/meta/ds#
Sure enough, there is no /usr/src/dsbuild/ds/jss directory.
If I go ahead and create the directory it still fails. I guess it's looking for more then just a directory
==> Building ds/jss as a dependency make[1]: Entering directory `/usr/src/dsbuild/ds/jss' make[1]: *** No rule to make target `install'. Stop. make[1]: Leaving directory `/usr/src/dsbuild/ds/jss' make: *** [dep-../../ds/jss] Error 2
Thanks for all the help Rich.
Ryan Braun Informatics Operations Aviation and Defence Services Division Chief Information Officer Branch, Environment Canada CIV: (204) 833-2500x2824 CSN: 257-2824 FAX: (204) 833-2524 E-Mail: Ryan.Braun@ec.gc.ca
Ryan Braun wrote:
On Wednesday 20 February 2008 9:05 pm, Rich Megginson wrote:
CONFIGURE_ARGS = $(DS_CONFIGURE_ARGS) --enable-bundle DS_CONFIGURE_ENV += CPPFLAGS=-DNETSNMP_USE_INLINE=1
Try CONFIGURE_ENV instead of DS_CONFIGURE_ENV - then remove work and cookies and try again
Ok, that worked. the ldapserver finished building. Next stop on the bug the the bug bashing train.
make[2]: *** [http//directory.fedoraproject.org/sources/ldapjdk.jar] Error 1 make[2]: Leaving directory `/usr/src/dsbuild/ds/ldapjdk' ==> Trying http//directory.fedoraproject.org/download/ldapjdk.jar make[2]: Entering directory `/usr/src/dsbuild/ds/ldapjdk' --15:41:29-- http://directory.fedoraproject.org/download/ldapjdk.jar => `download/ldapjdk.jar' Resolving xxxproxy.xxx.ec.gc.ca... Connecting to xxxproxy.xxx.ec.gc.ca||:8080... connected. Proxy request sent, awaiting response... 200 OK Length: 264,659 (258K) [application/x-java-archive]
100%[===============================================================================================================================================================================================>] 264,659 150.17K/s
15:41:31 (149.65 KB/s) - `download/ldapjdk.jar' saved [264659/264659]
make[2]: Leaving directory `/usr/src/dsbuild/ds/ldapjdk' [fetch] complete for ldapjdk. install -d cookies ==> Running checksum on ldapjdk.jar 200020a78145bda8401b71cd08c7756c download/ldapjdk.jar file ldapjdk.jar passes checksum test! [checksum] complete for ldapjdk. install -d work [extract] complete for ldapjdk. install -d work/ldapjdk-4.17 [patch] complete for ldapjdk. [configure] complete for ldapjdk. [build] complete for ldapjdk. mkdir -p cookies/. && date >> cookies/install-custom [install] complete for ldapjdk. make[1]: Leaving directory `/usr/src/dsbuild/ds/ldapjdk' ==> Building ds/jss as a dependency make: *** ../../ds/jss: No such file or directory. Stop. make: *** [dep-../../ds/jss] Error 2 ywgbuild:/usr/src/dsbuild/meta/ds#
Sure enough, there is no /usr/src/dsbuild/ds/jss directory.
If I go ahead and create the directory it still fails. I guess it's looking for more then just a directory
==> Building ds/jss as a dependency make[1]: Entering directory `/usr/src/dsbuild/ds/jss' make[1]: *** No rule to make target `install'. Stop. make[1]: Leaving directory `/usr/src/dsbuild/ds/jss' make: *** [dep-../../ds/jss] Error 2
Thanks for all the help Rich.
You're now past the point where I gave up :P But you now should have the core directory server. What's left is the console and the admin server components.
You can build the admin server stuff with make ... BUILD_DS_ADMIN=1 ADMINUTIL_SOURCE=1 MOD_NSS_SOURCE=1 ADMINSERVER_SOURCE=1
The java components will be more tricky.
For ldapjdk, it would be nice to be able to build from source in dsbuild, but the jar file is cross platform and stable.
JSS is different because it has some JNI code and should be compiled. There are binaries available from ftp.mozilla.org but I don't know how well they will work.
None of the other java components listed at http://directory.fedoraproject.org/wiki/Source and http://directory.fedoraproject.org/wiki/BuildingConsole have been rolled into dsbuild.
Ryan Braun Informatics Operations Aviation and Defence Services Division Chief Information Officer Branch, Environment Canada CIV: (204) 833-2500x2824 CSN: 257-2824 FAX: (204) 833-2524 E-Mail: Ryan.Braun@ec.gc.ca
-- Fedora-directory-users mailing list Fedora-directory-users@redhat.com https://www.redhat.com/mailman/listinfo/fedora-directory-users
On Wednesday 20 February 2008 10:18 pm, Rich Megginson wrote:
Sure enough, there is no /usr/src/dsbuild/ds/jss directory.
If I go ahead and create the directory it still fails. I guess it's looking for more then just a directory
==> Building ds/jss as a dependency make[1]: Entering directory `/usr/src/dsbuild/ds/jss' make[1]: *** No rule to make target `install'. Stop. make[1]: Leaving directory `/usr/src/dsbuild/ds/jss' make: *** [dep-../../ds/jss] Error 2
Thanks for all the help Rich.
You're now past the point where I gave up :P But you now should have the core directory server. What's left is the console and the admin server components.
You can build the admin server stuff with make ... BUILD_DS_ADMIN=1 ADMINUTIL_SOURCE=1 MOD_NSS_SOURCE=1 ADMINSERVER_SOURCE=1
The java components will be more tricky.
For ldapjdk, it would be nice to be able to build from source in dsbuild, but the jar file is cross platform and stable.
JSS is different because it has some JNI code and should be compiled. There are binaries available from ftp.mozilla.org but I don't know how well they will work.
None of the other java components listed at http://directory.fedoraproject.org/wiki/Source and http://directory.fedoraproject.org/wiki/BuildingConsole have been rolled into dsbuild.
Ok java components we'll come back to later, I'm having trouble building mod_nss now.
infinity:/usr/src/dsbuild/meta/ds# make BUILD_DS_ADMIN=1 ADMINUTIL_SOURCE=1 MOD_NSS_SOURCE=1 ADMINSERVER_SOURCE=1 SVRCORE_SOURCE=1 MOZLDAP_SOURCE=1 PERLDAP_SOURCE=1 [===== NOW BUILDING: ds-1.1.0 =====] [fetch] complete for ds. [checksum] complete for ds. [extract] complete for ds. [patch] complete for ds. ==> Building ds/svrcore as a dependency ==> Building ds/mozldap as a dependency ==> Building ds/perldap as a dependency ==> Building ds/ldapserver as a dependency ==> Building ds/adminutil as a dependency ==> Building ds/mod_nss as a dependency cat: /etc/redhat-release: No such file or directory make[1]: Entering directory `/usr/src/dsbuild/ds/mod_nss' [===== NOW BUILDING: mod_nss-1.0.7 =====] [fetch] complete for mod_nss. [checksum] complete for mod_nss. [extract] complete for mod_nss. [patch] complete for mod_nss. [configure] complete for mod_nss. ==> Running make in work/mod_nss-1.0.7 make[2]: Entering directory `/usr/src/dsbuild/ds/mod_nss/work/mod_nss-1.0.7' source='mod_nss.c' object='mod_nss.lo' libtool=yes \ depfile='.deps/mod_nss.Plo' tmpdepfile='.deps/mod_nss.TPlo' \ depmode=gcc3 /bin/sh ./depcomp \ /bin/sh ./libtool --mode=compile gcc -DPACKAGE_NAME="" -DPACKAGE_TARNAME="" -DPACKAGE_VERSION="" -DPACKAGE_STRING="" -DPACKAGE_BUGREPORT="" -DPACKAGE="mod_nss" -DVERSION="1.0" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DSTDC_HEADERS=1 -DHAVE_UNISTD_H=1 -I. -I. -I/usr/include/apache2 -I/usr/include/nspr -I/usr/include/nss -I/usr/include/nspr -I/usr/include/apr-1.0 -g -c -o mod_nss.lo `test -f 'mod_nss.c' || echo './'`mod_nss.c
gcc -DPACKAGE_NAME="" -DPACKAGE_TARNAME="" -DPACKAGE_VERSION="" -DPACKAGE_STRING="" -DPACKAGE_BUGREPORT="" -DPACKAGE="mod_nss" -DVERSION="1.0" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DSTDC_HEADERS=1 -DHAVE_UNISTD_H=1 -I. -I. -I/usr/include/apache2 -I/usr/include/nspr -I/usr/include/nss -I/usr/include/nspr -I/usr/include/apr-1.0 -g -c mod_nss.c -MT mod_nss.lo -MD -MP -MF .deps/mod_nss.TPlo -fPIC -DPIC -o .libs/mod_nss.o In file included from /usr/include/apache2/ap_config.h:25, from /usr/include/apache2/httpd.h:43, from mod_nss.h:20, from mod_nss.c:16: /usr/include/apr-1.0/apr.h:270: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'apr_off_t' In file included from /usr/include/apr-1.0/apr_file_io.h:29, from /usr/include/apr-1.0/apr_network_io.h:26, from /usr/include/apache2/httpd.h:53, from mod_nss.h:20, from mod_nss.c:16: /usr/include/apr-1.0/apr_file_info.h:210: error: expected specifier-qualifier-list before 'apr_off_t' In file included from /usr/include/apr-1.0/apr_network_io.h:26, from /usr/include/apache2/httpd.h:53, from mod_nss.h:20, from mod_nss.c:16: /usr/include/apr-1.0/apr_file_io.h:548: error: expected declaration specifiers or '...' before 'apr_off_t' /usr/include/apr-1.0/apr_file_io.h:740: error: expected declaration specifiers or '...' before 'apr_off_t' In file included from /usr/include/apache2/httpd.h:53, from mod_nss.h:20, from mod_nss.c:16: /usr/include/apr-1.0/apr_network_io.h:545: error: expected declaration specifiers or '...' before 'apr_off_t' In file included from /usr/include/apr-1.0/apr_buckets.h:32, from /usr/include/apache2/httpd.h:54, from mod_nss.h:20, from mod_nss.c:16: /usr/include/apr-1.0/apr_mmap.h:134: error: expected declaration specifiers or '...' before 'apr_off_t' /usr/include/apr-1.0/apr_mmap.h:161: error: expected declaration specifiers or '...' before 'apr_off_t' In file included from /usr/include/apache2/httpd.h:54, from mod_nss.h:20, from mod_nss.c:16: /usr/include/apr-1.0/apr_buckets.h:242: error: expected specifier-qualifier-list before 'apr_off_t' /usr/include/apr-1.0/apr_buckets.h:706: error: expected declaration specifiers or '...' before 'apr_off_t' /usr/include/apr-1.0/apr_buckets.h:718: error: expected declaration specifiers or '...' before 'apr_off_t' /usr/include/apr-1.0/apr_buckets.h:754: error: expected declaration specifiers or '...' before 'apr_off_t' /usr/include/apr-1.0/apr_buckets.h:890: error: expected declaration specifiers or '...' before 'apr_off_t' /usr/include/apr-1.0/apr_buckets.h:891: error: expected declaration specifiers or '...' before 'apr_off_t' /usr/include/apr-1.0/apr_buckets.h:1168: error: expected declaration specifiers or '...' before 'apr_off_t' /usr/include/apr-1.0/apr_buckets.h:1367: error: expected declaration specifiers or '...' before 'apr_off_t' /usr/include/apr-1.0/apr_buckets.h:1381: error: expected declaration specifiers or '...' before 'apr_off_t' /usr/include/apr-1.0/apr_buckets.h:1431: error: expected declaration specifiers or '...' before 'apr_off_t' /usr/include/apr-1.0/apr_buckets.h:1447: error: expected declaration specifiers or '...' before 'apr_off_t' In file included from mod_nss.h:20, from mod_nss.c:16: /usr/include/apache2/httpd.h:826: error: expected specifier-qualifier-list before 'apr_off_t' In file included from /usr/include/apache2/http_core.h:32, from mod_nss.h:22, from mod_nss.c:16: /usr/include/apache2/util_filter.h:142: error: expected declaration specifiers or '...' before 'apr_off_t' /usr/include/apache2/util_filter.h:299: error: expected declaration specifiers or '...' before 'apr_off_t' In file included from mod_nss.h:22, from mod_nss.c:16: /usr/include/apache2/http_core.h:229: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'ap_get_limit_req_body' /usr/include/apache2/http_core.h:672: error: expected declaration specifiers or '...' before 'apr_off_t' In file included from mod_nss.h:27, from mod_nss.c:16: /usr/include/apache2/http_protocol.h:111: error: expected declaration specifiers or '...' before 'apr_off_t' /usr/include/apache2/http_protocol.h:203: error: expected declaration specifiers or '...' before 'apr_off_t' In file included from /usr/include/apache2/mpm.h:26, from mod_nss.h:30, from mod_nss.c:16: /usr/include/apache2/scoreboard.h:116: error: expected specifier-qualifier-list before 'apr_off_t' In file included from mod_nss.h:32, from mod_nss.c:16: /usr/include/apr-1.0/apr_strings.h:297: error: expected declaration specifiers or '...' before 'apr_off_t' /usr/include/apr-1.0/apr_strings.h:313: error: expected ')' before '*' token /usr/include/apr-1.0/apr_strings.h:349: error: expected ')' before 'size' make[2]: *** [mod_nss.lo] Error 1 make[2]: Leaving directory `/usr/src/dsbuild/ds/mod_nss/work/mod_nss-1.0.7' make[1]: *** [build-work/mod_nss-1.0.7/Makefile] Error 2 make[1]: Leaving directory `/usr/src/dsbuild/ds/mod_nss' make: *** [dep-../../ds/mod_nss] Error 2 infinity:/usr/src/dsbuild/meta/ds#
Ryan Braun wrote:
On Wednesday 20 February 2008 10:18 pm, Rich Megginson wrote:
Sure enough, there is no /usr/src/dsbuild/ds/jss directory.
If I go ahead and create the directory it still fails. I guess it's looking for more then just a directory
==> Building ds/jss as a dependency make[1]: Entering directory `/usr/src/dsbuild/ds/jss' make[1]: *** No rule to make target `install'. Stop. make[1]: Leaving directory `/usr/src/dsbuild/ds/jss' make: *** [dep-../../ds/jss] Error 2
Thanks for all the help Rich.
You're now past the point where I gave up :P But you now should have the core directory server. What's left is the console and the admin server components.
You can build the admin server stuff with make ... BUILD_DS_ADMIN=1 ADMINUTIL_SOURCE=1 MOD_NSS_SOURCE=1 ADMINSERVER_SOURCE=1
The java components will be more tricky.
For ldapjdk, it would be nice to be able to build from source in dsbuild, but the jar file is cross platform and stable.
JSS is different because it has some JNI code and should be compiled. There are binaries available from ftp.mozilla.org but I don't know how well they will work.
None of the other java components listed at http://directory.fedoraproject.org/wiki/Source and http://directory.fedoraproject.org/wiki/BuildingConsole have been rolled into dsbuild.
Ok java components we'll come back to later, I'm having trouble building mod_nss now.
infinity:/usr/src/dsbuild/meta/ds# make BUILD_DS_ADMIN=1 ADMINUTIL_SOURCE=1 MOD_NSS_SOURCE=1 ADMINSERVER_SOURCE=1 SVRCORE_SOURCE=1 MOZLDAP_SOURCE=1 PERLDAP_SOURCE=1
Add APXS=/usr/bin/apxs2 HTTPD=/usr/sbin/apache2
Make sure you have the apache2-mpm-worker and apache2-threaded-dev packages installed.
[===== NOW BUILDING: ds-1.1.0 =====] [fetch] complete for ds. [checksum] complete for ds. [extract] complete for ds. [patch] complete for ds. ==> Building ds/svrcore as a dependency ==> Building ds/mozldap as a dependency ==> Building ds/perldap as a dependency ==> Building ds/ldapserver as a dependency ==> Building ds/adminutil as a dependency ==> Building ds/mod_nss as a dependency cat: /etc/redhat-release: No such file or directory make[1]: Entering directory `/usr/src/dsbuild/ds/mod_nss' [===== NOW BUILDING: mod_nss-1.0.7 =====]
<snip>
make[2]: *** [mod_nss.lo] Error 1 make[2]: Leaving directory `/usr/src/dsbuild/ds/mod_nss/work/mod_nss-1.0.7' make[1]: *** [build-work/mod_nss-1.0.7/Makefile] Error 2 make[1]: Leaving directory `/usr/src/dsbuild/ds/mod_nss' make: *** [dep-../../ds/mod_nss] Error 2 infinity:/usr/src/dsbuild/meta/ds#
-- Fedora-directory-users mailing list Fedora-directory-users@redhat.com https://www.redhat.com/mailman/listinfo/fedora-directory-users
Rich Megginson wrote:
Ryan Braun wrote:
On Wednesday 20 February 2008 10:18 pm, Rich Megginson wrote:
Sure enough, there is no /usr/src/dsbuild/ds/jss directory.
If I go ahead and create the directory it still fails. I guess it's looking for more then just a directory
==> Building ds/jss as a dependency make[1]: Entering directory `/usr/src/dsbuild/ds/jss' make[1]: *** No rule to make target `install'. Stop. make[1]: Leaving directory `/usr/src/dsbuild/ds/jss' make: *** [dep-../../ds/jss] Error 2
Thanks for all the help Rich.
You're now past the point where I gave up :P But you now should have the core directory server. What's left is the console and the admin server components.
You can build the admin server stuff with make ... BUILD_DS_ADMIN=1 ADMINUTIL_SOURCE=1 MOD_NSS_SOURCE=1 ADMINSERVER_SOURCE=1
The java components will be more tricky.
For ldapjdk, it would be nice to be able to build from source in dsbuild, but the jar file is cross platform and stable.
JSS is different because it has some JNI code and should be compiled. There are binaries available from ftp.mozilla.org but I don't know how well they will work.
None of the other java components listed at http://directory.fedoraproject.org/wiki/Source and http://directory.fedoraproject.org/wiki/BuildingConsole have been rolled into dsbuild.
Ok java components we'll come back to later, I'm having trouble building mod_nss now.
infinity:/usr/src/dsbuild/meta/ds# make BUILD_DS_ADMIN=1 ADMINUTIL_SOURCE=1 MOD_NSS_SOURCE=1 ADMINSERVER_SOURCE=1 SVRCORE_SOURCE=1 MOZLDAP_SOURCE=1 PERLDAP_SOURCE=1
Add APXS=/usr/bin/apxs2 HTTPD=/usr/sbin/apache2
Make sure you have the apache2-mpm-worker and apache2-threaded-dev packages installed.
One more thing - after you finish building, you'll have to comment out the following line in your $PREFIX/etc/dirsrv/admin-serv/httpd.conf: LoadModule log_config_module ......
Then you should be able to run $PREFIX/sbin/setup-ds-admin.pl. I was, and both directory server and admin server are running.
[===== NOW BUILDING: ds-1.1.0 =====] [fetch] complete for ds. [checksum] complete for ds. [extract] complete for ds. [patch] complete for ds. ==> Building ds/svrcore as a dependency ==> Building ds/mozldap as a dependency ==> Building ds/perldap as a dependency ==> Building ds/ldapserver as a dependency ==> Building ds/adminutil as a dependency ==> Building ds/mod_nss as a dependency cat: /etc/redhat-release: No such file or directory make[1]: Entering directory `/usr/src/dsbuild/ds/mod_nss' [===== NOW BUILDING: mod_nss-1.0.7 =====]
<snip>
make[2]: *** [mod_nss.lo] Error 1 make[2]: Leaving directory `/usr/src/dsbuild/ds/mod_nss/work/mod_nss-1.0.7' make[1]: *** [build-work/mod_nss-1.0.7/Makefile] Error 2 make[1]: Leaving directory `/usr/src/dsbuild/ds/mod_nss' make: *** [dep-../../ds/mod_nss] Error 2 infinity:/usr/src/dsbuild/meta/ds#
-- Fedora-directory-users mailing list Fedora-directory-users@redhat.com https://www.redhat.com/mailman/listinfo/fedora-directory-users
-- Fedora-directory-users mailing list Fedora-directory-users@redhat.com https://www.redhat.com/mailman/listinfo/fedora-directory-users
On Friday 22 February 2008 8:52 pm, Rich Megginson wrote:
The java components will be more tricky.
For ldapjdk, it would be nice to be able to build from source in dsbuild, but the jar file is cross platform and stable.
JSS is different because it has some JNI code and should be compiled. There are binaries available from ftp.mozilla.org but I don't know how well they will work.
None of the other java components listed at http://directory.fedoraproject.org/wiki/Source and http://directory.fedoraproject.org/wiki/BuildingConsole have been rolled into dsbuild.
Ok java components we'll come back to later, I'm having trouble building mod_nss now.
infinity:/usr/src/dsbuild/meta/ds# make BUILD_DS_ADMIN=1 ADMINUTIL_SOURCE=1 MOD_NSS_SOURCE=1 ADMINSERVER_SOURCE=1 SVRCORE_SOURCE=1 MOZLDAP_SOURCE=1 PERLDAP_SOURCE=1
Add APXS=/usr/bin/apxs2 HTTPD=/usr/sbin/apache2
Make sure you have the apache2-mpm-worker and apache2-threaded-dev packages installed.
One more thing - after you finish building, you'll have to comment out the following line in your $PREFIX/etc/dirsrv/admin-serv/httpd.conf: LoadModule log_config_module ......
Then you should be able to run $PREFIX/sbin/setup-ds-admin.pl. I was, and both directory server and admin server are running.
Ok, adding
APXS=/usr/bin/apxs2 HTTPD=/usr/sbin/apache2
to both dsbuild/ds/mod_nss/Makefile and dsbuild/adminserver/Makefile worked great. The dsbuild process finishes and appears to have compiled everything.
A couple little bugs creeped up during the build. I think it was during the make install of ldapserver. One of the binaries (the first one I guess) was copied to /opt/dirsrv/bin (the bin being a file not a directory) so the /opt/dirsrv/bin directory isn't getting created. Quick fix was just renaming /opt/dirsrv/bin to /opt/dirsrv/bin.something and rerunning make. Executing /opt/dirsrv/bin.something looks like the binary might be ldappasswd?
Second, there seems to be a missing library.
Starting admin server . . . output: ERROR: ld.so: object '/opt/dirsrv/lib/libssl3.so' from LD_PRELOAD cannot be preloaded: ignored. output: apache2: Syntax error on line 123 of /opt/dirsrv/etc/dirsrv/admin-serv/httpd.conf: module log_config_module is built-in and can't be loaded Could not start the admin server. Error: 256 Failed to create and configure the admin server Exiting . . .
I assumed the libssl3.so was supposed to be provided by building nss from source. So I just symlinked the system's libssl3.so provided by libnss3-0d back to /opt/dirsrv/lib/. Admin server seemed to startup fine after that (and fixing the debian httpd module issue).
So after all that I have a running slapd now, and the admin server is started. I can connect and bind as Directory Manager and browse the tree using any old ldap client. browsing to localhost:ADMINSRV_PORT works and brings up the web stuff. But when I try to connect to the adminserver using the console from the 1.0.4 directory server install, it will connect but not show any servers in the default view. Not sure if that is a 1.0.4 vs. 1.1.0 version problem, or a build issue with lacking java components.
Which leads me to my next question. The java components, are they only required for running the console on your client machines? So building with NOJAVA=1 will provide a fully working adminserver and ldapserver, just no console binaries?
To be honest, I haven't really looked into the different post install process' with 1.1.0 since 1.0.4 so the reason I could have missing entries in the console could very well be my own fault :)
Also, if I want to fine tune the location of some of directories during build. is it safe to modify the CONFIGURE_ARGS variable in the adminserver and ldapserver's Makefile? I want to put /opt/dirsrv/etc/dirsrv into /etc/dirsrv aswell as /opt/dirsrv/var into /var?
Ryan
Ryan Braun wrote:
On Friday 22 February 2008 8:52 pm, Rich Megginson wrote:
The java components will be more tricky.
For ldapjdk, it would be nice to be able to build from source in dsbuild, but the jar file is cross platform and stable.
JSS is different because it has some JNI code and should be compiled. There are binaries available from ftp.mozilla.org but I don't know how well they will work.
None of the other java components listed at http://directory.fedoraproject.org/wiki/Source and http://directory.fedoraproject.org/wiki/BuildingConsole have been rolled into dsbuild.
Ok java components we'll come back to later, I'm having trouble building mod_nss now.
infinity:/usr/src/dsbuild/meta/ds# make BUILD_DS_ADMIN=1 ADMINUTIL_SOURCE=1 MOD_NSS_SOURCE=1 ADMINSERVER_SOURCE=1 SVRCORE_SOURCE=1 MOZLDAP_SOURCE=1 PERLDAP_SOURCE=1
Add APXS=/usr/bin/apxs2 HTTPD=/usr/sbin/apache2
Make sure you have the apache2-mpm-worker and apache2-threaded-dev packages installed.
One more thing - after you finish building, you'll have to comment out the following line in your $PREFIX/etc/dirsrv/admin-serv/httpd.conf: LoadModule log_config_module ......
Then you should be able to run $PREFIX/sbin/setup-ds-admin.pl. I was, and both directory server and admin server are running.
Ok, adding
APXS=/usr/bin/apxs2 HTTPD=/usr/sbin/apache2
to both dsbuild/ds/mod_nss/Makefile and dsbuild/adminserver/Makefile worked great. The dsbuild process finishes and appears to have compiled everything.
A couple little bugs creeped up during the build. I think it was during the make install of ldapserver. One of the binaries (the first one I guess) was copied to /opt/dirsrv/bin (the bin being a file not a directory) so the /opt/dirsrv/bin directory isn't getting created. Quick fix was just renaming /opt/dirsrv/bin to /opt/dirsrv/bin.something and rerunning make. Executing /opt/dirsrv/bin.something looks like the binary might be ldappasswd?
Probably a bug in ds/mozldap/Makefile in the install section.
Second, there seems to be a missing library.
Starting admin server . . . output: ERROR: ld.so: object '/opt/dirsrv/lib/libssl3.so' from LD_PRELOAD cannot be preloaded: ignored. output: apache2: Syntax error on line 123 of /opt/dirsrv/etc/dirsrv/admin-serv/httpd.conf: module log_config_module is built-in and can't be loaded Could not start the admin server. Error: 256 Failed to create and configure the admin server Exiting . . .
I assumed the libssl3.so was supposed to be provided by building nss from source. So I just symlinked the system's libssl3.so provided by libnss3-0d back to /opt/dirsrv/lib/.
Ok. Or just edit the start-ds-admin script. Looks like a bug - it should use the correct path to libssl3.so. But then the NSS devel support in etch is not quite there.
Admin server seemed to startup fine after that (and fixing the debian httpd module issue).
So after all that I have a running slapd now, and the admin server is started. I can connect and bind as Directory Manager and browse the tree using any old ldap client. browsing to localhost:ADMINSRV_PORT works and brings up the web stuff. But when I try to connect to the adminserver using the console from the 1.0.4 directory server install, it will connect but not show any servers in the default view. Not sure if that is a 1.0.4 vs. 1.1.0 version problem, or a build issue with lacking java components.
It is the latter. The java components are server version specific - so you need fedora-ds-console 1.1 and fedora-ds-admin-console 1.1 in order to manage the 1.1 versions of their respective servers.
Which leads me to my next question. The java components, are they only required for running the console on your client machines? So building with NOJAVA=1 will provide a fully working adminserver and ldapserver, just no console binaries?
Mostly correct. The only thing is that the way the console works, it downloads the ds and ds-admin jar files from the admin server. However, if you build them on the client machine and install them into $HOME/.fedora-idm-console/jars then the console will just use the local ones.
To be honest, I haven't really looked into the different post install process' with 1.1.0 since 1.0.4 so the reason I could have missing entries in the console could very well be my own fault :)
Also, if I want to fine tune the location of some of directories during build. is it safe to modify the CONFIGURE_ARGS variable in the adminserver and ldapserver's Makefile? I want to put /opt/dirsrv/etc/dirsrv into /etc/dirsrv aswell as /opt/dirsrv/var into /var?
Yes, for those components whose configure respect --sysconfdir and --localstatedir - which means not the mozilla components (mozldap, etc.) but everything else should work just fine. You'll also have to tweak the --prefix argument which is set by default.
Ryan
-- Fedora-directory-users mailing list Fedora-directory-users@redhat.com https://www.redhat.com/mailman/listinfo/fedora-directory-users
hello,
I trying follow the compileing procedure, and I have a few succes. I have a fully working ns-slapd, admin-server, but the console work perfect only on windows. On linux the console is started and I can login, but has a few problems.
management console looks like ok.
ds-console does not show anything in the right plane, task tab is blank.
ds-admin console not stop/restart server, configuration is only show the network tab. other tabs are blank.
I used for the build:
ldapjdk.jar: ftp://ftp.uni-bayreuth.de/pub/linux/arklinux/2006.1/i586/ldapsdk-java-4.17-1ark.i586.rpm
jss4.jar: download from anywhere, i can't remember.
mod_nss:
mod_nss-1.0.7
The rest are original etch packages.
How can I produce some log for debugging? (I know nothing almost for java.)
thanks,
Tamas Bagyal
Rich Megginson wrote:
Ryan Braun wrote:
On Friday 22 February 2008 8:52 pm, Rich Megginson wrote:
The java components will be more tricky.
For ldapjdk, it would be nice to be able to build from source in dsbuild, but the jar file is cross platform and stable.
JSS is different because it has some JNI code and should be compiled. There are binaries available from ftp.mozilla.org but I don't know how well they will work.
None of the other java components listed at http://directory.fedoraproject.org/wiki/Source and http://directory.fedoraproject.org/wiki/BuildingConsole have been rolled into dsbuild.
Ok java components we'll come back to later, I'm having trouble building mod_nss now.
infinity:/usr/src/dsbuild/meta/ds# make BUILD_DS_ADMIN=1 ADMINUTIL_SOURCE=1 MOD_NSS_SOURCE=1 ADMINSERVER_SOURCE=1 SVRCORE_SOURCE=1 MOZLDAP_SOURCE=1 PERLDAP_SOURCE=1
Add APXS=/usr/bin/apxs2 HTTPD=/usr/sbin/apache2
Make sure you have the apache2-mpm-worker and apache2-threaded-dev packages installed.
One more thing - after you finish building, you'll have to comment out the following line in your $PREFIX/etc/dirsrv/admin-serv/httpd.conf: LoadModule log_config_module ......
Then you should be able to run $PREFIX/sbin/setup-ds-admin.pl. I was, and both directory server and admin server are running.
Ok, adding APXS=/usr/bin/apxs2 HTTPD=/usr/sbin/apache2
to both dsbuild/ds/mod_nss/Makefile and dsbuild/adminserver/Makefile worked great. The dsbuild process finishes and appears to have compiled everything.
A couple little bugs creeped up during the build. I think it was during the make install of ldapserver. One of the binaries (the first one I guess) was copied to /opt/dirsrv/bin (the bin being a file not a directory) so the /opt/dirsrv/bin directory isn't getting created. Quick fix was just renaming /opt/dirsrv/bin to /opt/dirsrv/bin.something and rerunning make. Executing /opt/dirsrv/bin.something looks like the binary might be ldappasswd?
Probably a bug in ds/mozldap/Makefile in the install section.
Second, there seems to be a missing library.
Starting admin server . . . output: ERROR: ld.so: object '/opt/dirsrv/lib/libssl3.so' from LD_PRELOAD cannot be preloaded: ignored. output: apache2: Syntax error on line 123 of /opt/dirsrv/etc/dirsrv/admin-serv/httpd.conf: module log_config_module is built-in and can't be loaded Could not start the admin server. Error: 256 Failed to create and configure the admin server Exiting . . .
I assumed the libssl3.so was supposed to be provided by building nss from source. So I just symlinked the system's libssl3.so provided by libnss3-0d back to /opt/dirsrv/lib/.
Ok. Or just edit the start-ds-admin script. Looks like a bug - it should use the correct path to libssl3.so. But then the NSS devel support in etch is not quite there.
Admin server seemed to startup fine after that (and fixing the debian httpd module issue).
So after all that I have a running slapd now, and the admin server is started. I can connect and bind as Directory Manager and browse the tree using any old ldap client. browsing to localhost:ADMINSRV_PORT works and brings up the web stuff. But when I try to connect to the adminserver using the console from the 1.0.4 directory server install, it will connect but not show any servers in the default view. Not sure if that is a 1.0.4 vs. 1.1.0 version problem, or a build issue with lacking java components.
It is the latter. The java components are server version specific - so you need fedora-ds-console 1.1 and fedora-ds-admin-console 1.1 in order to manage the 1.1 versions of their respective servers.
Which leads me to my next question. The java components, are they only required for running the console on your client machines? So building with NOJAVA=1 will provide a fully working adminserver and ldapserver, just no console binaries?
Mostly correct. The only thing is that the way the console works, it downloads the ds and ds-admin jar files from the admin server. However, if you build them on the client machine and install them into $HOME/.fedora-idm-console/jars then the console will just use the local ones.
To be honest, I haven't really looked into the different post install process' with 1.1.0 since 1.0.4 so the reason I could have missing entries in the console could very well be my own fault :)
Also, if I want to fine tune the location of some of directories during build. is it safe to modify the CONFIGURE_ARGS variable in the adminserver and ldapserver's Makefile? I want to put /opt/dirsrv/etc/dirsrv into /etc/dirsrv aswell as /opt/dirsrv/var into /var?
Yes, for those components whose configure respect --sysconfdir and --localstatedir - which means not the mozilla components (mozldap, etc.) but everything else should work just fine. You'll also have to tweak the --prefix argument which is set by default.
Ryan
-- Fedora-directory-users mailing list Fedora-directory-users@redhat.com https://www.redhat.com/mailman/listinfo/fedora-directory-users
-- Fedora-directory-users mailing list Fedora-directory-users@redhat.com https://www.redhat.com/mailman/listinfo/fedora-directory-users
Tamas Bagyal wrote:
hello,
I trying follow the compileing procedure, and I have a few succes. I have a fully working ns-slapd, admin-server, but the console work perfect only on windows. On linux the console is started and I can login, but has a few problems.
management console looks like ok.
ds-console does not show anything in the right plane, task tab is blank.
ds-admin console not stop/restart server, configuration is only show the network tab. other tabs are blank.
I used for the build:
ldapjdk.jar: ftp://ftp.uni-bayreuth.de/pub/linux/arklinux/2006.1/i586/ldapsdk-java-4.17-1ark.i586.rpm
jss4.jar: download from anywhere, i can't remember.
mod_nss:
mod_nss-1.0.7
The rest are original etch packages.
How can I produce some log for debugging? (I know nothing almost for java.)
fedora-idm-console -D 9 -f console.log
thanks,
Tamas Bagyal
Rich Megginson wrote:
Ryan Braun wrote:
On Friday 22 February 2008 8:52 pm, Rich Megginson wrote:
> The java components will be more tricky. > > For ldapjdk, it would be nice to be able to build from source in > dsbuild, but the jar file is cross platform and stable. > > JSS is different because it has some JNI code and should be > compiled. > There are binaries available from ftp.mozilla.org but I don't > know how > well they will work. > > None of the other java components listed at > http://directory.fedoraproject.org/wiki/Source and > http://directory.fedoraproject.org/wiki/BuildingConsole have been > rolled > into dsbuild. > Ok java components we'll come back to later, I'm having trouble building mod_nss now.
infinity:/usr/src/dsbuild/meta/ds# make BUILD_DS_ADMIN=1 ADMINUTIL_SOURCE=1 MOD_NSS_SOURCE=1 ADMINSERVER_SOURCE=1 SVRCORE_SOURCE=1 MOZLDAP_SOURCE=1 PERLDAP_SOURCE=1
Add APXS=/usr/bin/apxs2 HTTPD=/usr/sbin/apache2
Make sure you have the apache2-mpm-worker and apache2-threaded-dev packages installed.
One more thing - after you finish building, you'll have to comment out the following line in your $PREFIX/etc/dirsrv/admin-serv/httpd.conf: LoadModule log_config_module ......
Then you should be able to run $PREFIX/sbin/setup-ds-admin.pl. I was, and both directory server and admin server are running.
Ok, adding APXS=/usr/bin/apxs2 HTTPD=/usr/sbin/apache2
to both dsbuild/ds/mod_nss/Makefile and dsbuild/adminserver/Makefile worked great. The dsbuild process finishes and appears to have compiled everything.
A couple little bugs creeped up during the build. I think it was during the make install of ldapserver. One of the binaries (the first one I guess) was copied to /opt/dirsrv/bin (the bin being a file not a directory) so the /opt/dirsrv/bin directory isn't getting created. Quick fix was just renaming /opt/dirsrv/bin to /opt/dirsrv/bin.something and rerunning make. Executing /opt/dirsrv/bin.something looks like the binary might be ldappasswd?
Probably a bug in ds/mozldap/Makefile in the install section.
Second, there seems to be a missing library.
Starting admin server . . . output: ERROR: ld.so: object '/opt/dirsrv/lib/libssl3.so' from LD_PRELOAD cannot be preloaded: ignored. output: apache2: Syntax error on line 123 of /opt/dirsrv/etc/dirsrv/admin-serv/httpd.conf: module log_config_module is built-in and can't be loaded Could not start the admin server. Error: 256 Failed to create and configure the admin server Exiting . . .
I assumed the libssl3.so was supposed to be provided by building nss from source. So I just symlinked the system's libssl3.so provided by libnss3-0d back to /opt/dirsrv/lib/.
Ok. Or just edit the start-ds-admin script. Looks like a bug - it should use the correct path to libssl3.so. But then the NSS devel support in etch is not quite there.
Admin server seemed to startup fine after that (and fixing the debian httpd module issue).
So after all that I have a running slapd now, and the admin server is started. I can connect and bind as Directory Manager and browse the tree using any old ldap client. browsing to localhost:ADMINSRV_PORT works and brings up the web stuff. But when I try to connect to the adminserver using the console from the 1.0.4 directory server install, it will connect but not show any servers in the default view. Not sure if that is a 1.0.4 vs. 1.1.0 version problem, or a build issue with lacking java components.
It is the latter. The java components are server version specific - so you need fedora-ds-console 1.1 and fedora-ds-admin-console 1.1 in order to manage the 1.1 versions of their respective servers.
Which leads me to my next question. The java components, are they only required for running the console on your client machines? So building with NOJAVA=1 will provide a fully working adminserver and ldapserver, just no console binaries?
Mostly correct. The only thing is that the way the console works, it downloads the ds and ds-admin jar files from the admin server. However, if you build them on the client machine and install them into $HOME/.fedora-idm-console/jars then the console will just use the local ones.
To be honest, I haven't really looked into the different post install process' with 1.1.0 since 1.0.4 so the reason I could have missing entries in the console could very well be my own fault :)
Also, if I want to fine tune the location of some of directories during build. is it safe to modify the CONFIGURE_ARGS variable in the adminserver and ldapserver's Makefile? I want to put /opt/dirsrv/etc/dirsrv into /etc/dirsrv aswell as /opt/dirsrv/var into /var?
Yes, for those components whose configure respect --sysconfdir and --localstatedir - which means not the mozilla components (mozldap, etc.) but everything else should work just fine. You'll also have to tweak the --prefix argument which is set by default.
Ryan
-- Fedora-directory-users mailing list Fedora-directory-users@redhat.com https://www.redhat.com/mailman/listinfo/fedora-directory-users
-- Fedora-directory-users mailing list Fedora-directory-users@redhat.com https://www.redhat.com/mailman/listinfo/fedora-directory-users
-- Fedora-directory-users mailing list Fedora-directory-users@redhat.com https://www.redhat.com/mailman/listinfo/fedora-directory-users
A couple little bugs creeped up during the build. I think it was during the make install of ldapserver. One of the binaries (the first one I guess) was copied to /opt/dirsrv/bin (the bin being a file not a directory) so the /opt/dirsrv/bin directory isn't getting created. Quick fix was just renaming /opt/dirsrv/bin to /opt/dirsrv/bin.something and rerunning make. Executing /opt/dirsrv/bin.something looks like the binary might be ldappasswd?
Probably a bug in ds/mozldap/Makefile in the install section.
I had a peek in there, it looks ok, but I'll add a mkdir -p /opt/dirsrv/bin before the copy loop and see if that works next time I build.
Second, there seems to be a missing library.
Starting admin server . . . output: ERROR: ld.so: object '/opt/dirsrv/lib/libssl3.so' from LD_PRELOAD cannot be preloaded: ignored. output: apache2: Syntax error on line 123 of /opt/dirsrv/etc/dirsrv/admin-serv/httpd.conf: module log_config_module is built-in and can't be loaded Could not start the admin server. Error: 256 Failed to create and configure the admin server Exiting . . .
I assumed the libssl3.so was supposed to be provided by building nss from source. So I just symlinked the system's libssl3.so provided by libnss3-0d back to /opt/dirsrv/lib/.
Ok. Or just edit the start-ds-admin script. Looks like a bug - it should use the correct path to libssl3.so. But then the NSS devel support in etch is not quite there.
Gotcha
Which leads me to my next question. The java components, are they only required for running the console on your client machines? So building with NOJAVA=1 will provide a fully working adminserver and ldapserver, just no console binaries?
Mostly correct. The only thing is that the way the console works, it downloads the ds and ds-admin jar files from the admin server. However, if you build them on the client machine and install them into $HOME/.fedora-idm-console/jars then the console will just use the local ones.
Ok, well I tried installing the windows console on one of the windows boxes around here (easier then downloading fc isos :) ), fired up the console and am able to connect and it looks like it wants to work, then it reports back that it can't find the jars. So that being said, is there an easy way to use FC jars, or do I need to build them for debian? (I have started trying to build jss but am having some issues)
To be honest, I haven't really looked into the different post install process' with 1.1.0 since 1.0.4 so the reason I could have missing entries in the console could very well be my own fault :)
Also, if I want to fine tune the location of some of directories during build. is it safe to modify the CONFIGURE_ARGS variable in the adminserver and ldapserver's Makefile? I want to put /opt/dirsrv/etc/dirsrv into /etc/dirsrv aswell as /opt/dirsrv/var into /var?
Yes, for those components whose configure respect --sysconfdir and --localstatedir - which means not the mozilla components (mozldap, etc.) but everything else should work just fine. You'll also have to tweak the --prefix argument which is set by default.
I'll play around with some options. I've started a wiki page for the debian build. I don't have it linked onto the main page, but you can check it out in recent changes.
Ryan
Ryan Braun wrote:
<snip> > Mostly correct. The only thing is that the way the console works, it > downloads the ds and ds-admin jar files from the admin server. However, > if you build them on the client machine and install them into > $HOME/.fedora-idm-console/jars then the console will just use the local > ones. >
Ok, well I tried installing the windows console on one of the windows boxes around here (easier then downloading fc isos :) ), fired up the console and am able to connect and it looks like it wants to work, then it reports back that it can't find the jars.
Right. The windows console works the same way - it tries to download the server specific jar files from the admin server via http.
So that being said, is there an easy way to use FC jars, or do I need to build them for debian? (I have started trying to build jss but am having some issues)
Yes. Just grab them from /usr/share/dirsrv/html/java. I suggest using tar or another program to preserve the symlinks - but no big deal as the jar files are small if you use cp and get redundant copies. The jar files are platform independent.
To be honest, I haven't really looked into the different post install process' with 1.1.0 since 1.0.4 so the reason I could have missing entries in the console could very well be my own fault :)
Also, if I want to fine tune the location of some of directories during build. is it safe to modify the CONFIGURE_ARGS variable in the adminserver and ldapserver's Makefile? I want to put /opt/dirsrv/etc/dirsrv into /etc/dirsrv aswell as /opt/dirsrv/var into /var?
Yes, for those components whose configure respect --sysconfdir and --localstatedir - which means not the mozilla components (mozldap, etc.) but everything else should work just fine. You'll also have to tweak the --prefix argument which is set by default.
I'll play around with some options. I've started a wiki page for the debian build. I don't have it linked onto the main page, but you can check it out in recent changes.
Ok. Thanks!
Ryan
-- Fedora-directory-users mailing list Fedora-directory-users@redhat.com https://www.redhat.com/mailman/listinfo/fedora-directory-users
On Tuesday 26 February 2008 5:05 pm, Rich Megginson wrote:
So that being said, is there an easy way to use FC jars, or do I need to build them for debian? (I have started trying to build jss but am having some issues)
Yes. Just grab them from /usr/share/dirsrv/html/java. I suggest using tar or another program to preserve the symlinks - but no big deal as the jar files are small if you use cp and get redundant copies. The jar files are platform independent.
I am getting an error with my built jar files. I connect up fine (bind with cn=Directory Manager). When I start expanding the tree, and click on the + sign next to Server Group. It throws an error
Failed to instantiate Server Object for Administration server
com.netscape.management.admserv.AdminServer cannot be cast to com.netscape.management.client.topology.IServerObject
I click ok, and a slightly different error comes up
Failed to instantiate Server Object for Directory Server
com.netscape.admin.dirserv.DSAdmin cannot be cast to com.netscape.management.client.topology.IServerObject
If I click on the directory server under server group, it says This server component has not been downloaded or it could not be activated. I can see they were downloaded to C:\Documents and Settings\bullpen.fedora-idm-console\jars.
I ran the console with a -D 9 and have the output up on pastbin
Looks like the errors are around line 475, 860 and 890.
I also have the build process I used when making the java components up on pastebin aswell.
The windows console will work fine if I delete the downloaded jars from windows. And then copy over fc8 supplied jars into /opt/dirsrv/share/dirsrv/html/java ( and symlink them after). So something in the build process is breaking my jars I guess :)
Ryan
Ryan Braun wrote:
On Tuesday 26 February 2008 5:05 pm, Rich Megginson wrote:
So that being said, is there an easy way to use FC jars, or do I need to build them for debian? (I have started trying to build jss but am having some issues)
Yes. Just grab them from /usr/share/dirsrv/html/java. I suggest using tar or another program to preserve the symlinks - but no big deal as the jar files are small if you use cp and get redundant copies. The jar files are platform independent.
I am getting an error with my built jar files. I connect up fine (bind with cn=Directory Manager). When I start expanding the tree, and click on the + sign next to Server Group. It throws an error
Failed to instantiate Server Object for Administration server
com.netscape.management.admserv.AdminServer cannot be cast to com.netscape.management.client.topology.IServerObject
I click ok, and a slightly different error comes up
Failed to instantiate Server Object for Directory Server
com.netscape.admin.dirserv.DSAdmin cannot be cast to com.netscape.management.client.topology.IServerObject
If I click on the directory server under server group, it says This server component has not been downloaded or it could not be activated. I can see they were downloaded to C:\Documents and Settings\bullpen.fedora-idm-console\jars.
I ran the console with a -D 9 and have the output up on pastbin
Looks like the errors are around line 475, 860 and 890.
Yeah, those are weird. What version of Java did you use to build those jar files? I note that you are using Sun Java 1.6 on Windows - we've not tested with that version, only 1.5.
I also have the build process I used when making the java components up on pastebin aswell.
The windows console will work fine if I delete the downloaded jars from windows. And then copy over fc8 supplied jars into /opt/dirsrv/share/dirsrv/html/java ( and symlink them after). So something in the build process is breaking my jars I guess :)
I think the current jars for f8 were built with ibm java 1.5.
Ryan
-- Fedora-directory-users mailing list Fedora-directory-users@redhat.com https://www.redhat.com/mailman/listinfo/fedora-directory-users
On Tuesday 26 February 2008 9:54 pm, Rich Megginson wrote:
Ryan Braun wrote:
On Tuesday 26 February 2008 5:05 pm, Rich Megginson wrote:
So that being said, is there an easy way to use FC jars, or do I need to build them for debian? (I have started trying to build jss but am having some issues)
Yes. Just grab them from /usr/share/dirsrv/html/java. I suggest using tar or another program to preserve the symlinks - but no big deal as the jar files are small if you use cp and get redundant copies. The jar files are platform independent.
I am getting an error with my built jar files. I connect up fine (bind with cn=Directory Manager). When I start expanding the tree, and click on the + sign next to Server Group. It throws an error
Failed to instantiate Server Object for Administration server
com.netscape.management.admserv.AdminServer cannot be cast to com.netscape.management.client.topology.IServerObject
I click ok, and a slightly different error comes up
Failed to instantiate Server Object for Directory Server
com.netscape.admin.dirserv.DSAdmin cannot be cast to com.netscape.management.client.topology.IServerObject
If I click on the directory server under server group, it says This server component has not been downloaded or it could not be activated. I can see they were downloaded to C:\Documents and Settings\bullpen.fedora-idm-console\jars.
I ran the console with a -D 9 and have the output up on pastbin
Looks like the errors are around line 475, 860 and 890.
Yeah, those are weird. What version of Java did you use to build those jar files? I note that you are using Sun Java 1.6 on Windows - we've not tested with that version, only 1.5.
Hah, right when I sent this off I was thinking, I should have included java versions :)
fdsbuild:/opt/dirsrv/share/dirsrv/html/java# java -version java version "1.5.0_10" Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_10-b03) Java HotSpot(TM) Client VM (build 1.5.0_10-b03, mixed mode, sharing) fdsbuild:/opt/dirsrv/share/dirsrv/html/java# dpkg -l |grep sun ii sun-java5-bin 1.5.0-10-3 Sun Java(TM) Runtime Environment (JRE) 5.0 ( ii sun-java5-demo 1.5.0-10-3 Sun Java(TM) Development Kit (JDK) 5.0 demos ii sun-java5-jdk 1.5.0-10-3 Sun Java(TM) Development Kit (JDK) 5.0 ii sun-java5-jre 1.5.0-10-3 Sun Java(TM) Runtime Environment (JRE) 5.0 (
I'm not sure what happened in the build process, but the jars I made are quite alot larger in size compared to the fc8 jars. Mine are 1.1.1 fc 8 1.1.0 (at least the non _en ones anyhow)
-rw-r--r-- 1 root root 37521 2008-02-26 17:22 fedora-admin-1.1.0_en.jar -rw-r--r-- 1 root root 174456 2008-02-26 17:22 fedora-admin-1.1.0.jar -rw-r--r-- 1 root root 37563 2008-02-26 18:51 fedora-admin-1.1.1_en.jar -rw-r--r-- 1 root root 2486692 2008-02-26 18:51 fedora-admin-1.1.1.jar -rw-r--r-- 1 root root 54302 2007-11-07 21:59 fedora-ds-1.1.0_en.jar -rw-r--r-- 1 root root 1409434 2007-11-07 21:59 fedora-ds-1.1.0.jar -rw-r--r-- 1 root root 54534 2008-02-26 18:50 fedora-ds-1.1.1_en.jar -rw-r--r-- 1 root root 2470933 2008-02-26 18:50 fedora-ds-1.1.1.jar
I also have the build process I used when making the java components up on pastebin aswell.
The windows console will work fine if I delete the downloaded jars from windows. And then copy over fc8 supplied jars into /opt/dirsrv/share/dirsrv/html/java ( and symlink them after). So something in the build process is breaking my jars I guess :)
I think the current jars for f8 were built with ibm java 1.5.
To be honest, for myself I'm fine with using the fc8 jars. I can't really see myself using the console very much other then initial setup. I've written several perl scripts for day to day stuff (user creation, editing etc).
Ryan Braun wrote:
On Tuesday 26 February 2008 9:54 pm, Rich Megginson wrote:
Ryan Braun wrote:
On Tuesday 26 February 2008 5:05 pm, Rich Megginson wrote:
So that being said, is there an easy way to use FC jars, or do I need to build them for debian? (I have started trying to build jss but am having some issues)
Yes. Just grab them from /usr/share/dirsrv/html/java. I suggest using tar or another program to preserve the symlinks - but no big deal as the jar files are small if you use cp and get redundant copies. The jar files are platform independent.
I am getting an error with my built jar files. I connect up fine (bind with cn=Directory Manager). When I start expanding the tree, and click on the + sign next to Server Group. It throws an error
Failed to instantiate Server Object for Administration server
com.netscape.management.admserv.AdminServer cannot be cast to com.netscape.management.client.topology.IServerObject
I click ok, and a slightly different error comes up
Failed to instantiate Server Object for Directory Server
com.netscape.admin.dirserv.DSAdmin cannot be cast to com.netscape.management.client.topology.IServerObject
If I click on the directory server under server group, it says This server component has not been downloaded or it could not be activated. I can see they were downloaded to C:\Documents and Settings\bullpen.fedora-idm-console\jars.
I ran the console with a -D 9 and have the output up on pastbin
Looks like the errors are around line 475, 860 and 890.
Yeah, those are weird. What version of Java did you use to build those jar files? I note that you are using Sun Java 1.6 on Windows - we've not tested with that version, only 1.5.
Hah, right when I sent this off I was thinking, I should have included java versions :)
fdsbuild:/opt/dirsrv/share/dirsrv/html/java# java -version java version "1.5.0_10" Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_10-b03) Java HotSpot(TM) Client VM (build 1.5.0_10-b03, mixed mode, sharing) fdsbuild:/opt/dirsrv/share/dirsrv/html/java# dpkg -l |grep sun ii sun-java5-bin 1.5.0-10-3 Sun Java(TM) Runtime Environment (JRE) 5.0 ( ii sun-java5-demo 1.5.0-10-3 Sun Java(TM) Development Kit (JDK) 5.0 demos ii sun-java5-jdk 1.5.0-10-3 Sun Java(TM) Development Kit (JDK) 5.0 ii sun-java5-jre 1.5.0-10-3 Sun Java(TM) Runtime Environment (JRE) 5.0 (
I'm not sure what happened in the build process, but the jars I made are quite alot larger in size compared to the fc8 jars. Mine are 1.1.1 fc 8 1.1.0 (at least the non _en ones anyhow)
-rw-r--r-- 1 root root 37521 2008-02-26 17:22 fedora-admin-1.1.0_en.jar -rw-r--r-- 1 root root 174456 2008-02-26 17:22 fedora-admin-1.1.0.jar -rw-r--r-- 1 root root 37563 2008-02-26 18:51 fedora-admin-1.1.1_en.jar -rw-r--r-- 1 root root 2486692 2008-02-26 18:51 fedora-admin-1.1.1.jar -rw-r--r-- 1 root root 54302 2007-11-07 21:59 fedora-ds-1.1.0_en.jar -rw-r--r-- 1 root root 1409434 2007-11-07 21:59 fedora-ds-1.1.0.jar -rw-r--r-- 1 root root 54534 2008-02-26 18:50 fedora-ds-1.1.1_en.jar -rw-r--r-- 1 root root 2470933 2008-02-26 18:50 fedora-ds-1.1.1.jar
Not sure. Could be debug mode?
Also, where did you get the sun java5 in .deb packages? Are those provided by Debian?
I also have the build process I used when making the java components up on pastebin aswell.
The windows console will work fine if I delete the downloaded jars from windows. And then copy over fc8 supplied jars into /opt/dirsrv/share/dirsrv/html/java ( and symlink them after). So something in the build process is breaking my jars I guess :)
I think the current jars for f8 were built with ibm java 1.5.
To be honest, for myself I'm fine with using the fc8 jars. I can't really see myself using the console very much other then initial setup. I've written several perl scripts for day to day stuff (user creation, editing etc).
Ok. I'd like to eventually get dsbuild to build all of the console components as well. But it's convenient that the jars are mostly platform independent.
-- Fedora-directory-users mailing list Fedora-directory-users@redhat.com https://www.redhat.com/mailman/listinfo/fedora-directory-users
On Tue, 2008-02-26 at 15:26 -0700, Rich Megginson wrote:
Not sure. Could be debug mode?
Also, where did you get the sun java5 in .deb packages? Are those provided by Debian?
I can't swear to where anyone else gets them, but I use:
deb http://ftp.us.debian.org/debian/ sid main contrib nonfree deb-src http://ftp.us.debian.org/debian/ sid main contrib nonfree
in my /etc/apt/sources.list file, and probably will until IcedTea or OpenJDK makes it into Debian. The contrib and nonfree repositories aren't officially part of Debian, but contain, respectively, Free software that depends on non-Free software and non-Free software that is legally redistributable. Java has been in there since around the time Sun initially announced that they were going to make it open-source and changed the terms of their license to make the current versions of Java distributable.
--
hello Ryan,
you tried this version? i have two fedora-ds 1.0.4 in mmr configuration. i migrate one of those to 1.1 (builded by your and Rich's instrutctions). but i have a problem with memory usage of ns-slapd process. initially mem usage is 18.5% but after 2 hours this changed to 23.1% and growed until killed by kernel. (i think...)
mostly read transactions happen (dns) with a few write (cups). this is a debian etch, mem size is 512 mbyte (i know this is too low, but this is a test environment). cache size of slapd is 67108864.
can you give any help?
thanks,
KeeF
Ryan Braun wrote:
A couple little bugs creeped up during the build. I think it was during the make install of ldapserver. One of the binaries (the first one I guess) was copied to /opt/dirsrv/bin (the bin being a file not a directory) so the /opt/dirsrv/bin directory isn't getting created. Quick fix was just renaming /opt/dirsrv/bin to /opt/dirsrv/bin.something and rerunning make. Executing /opt/dirsrv/bin.something looks like the binary might be ldappasswd?
Probably a bug in ds/mozldap/Makefile in the install section.
I had a peek in there, it looks ok, but I'll add a mkdir -p /opt/dirsrv/bin before the copy loop and see if that works next time I build.
Second, there seems to be a missing library.
Starting admin server . . . output: ERROR: ld.so: object '/opt/dirsrv/lib/libssl3.so' from LD_PRELOAD cannot be preloaded: ignored. output: apache2: Syntax error on line 123 of /opt/dirsrv/etc/dirsrv/admin-serv/httpd.conf: module log_config_module is built-in and can't be loaded Could not start the admin server. Error: 256 Failed to create and configure the admin server Exiting . . .
I assumed the libssl3.so was supposed to be provided by building nss from source. So I just symlinked the system's libssl3.so provided by libnss3-0d back to /opt/dirsrv/lib/.
Ok. Or just edit the start-ds-admin script. Looks like a bug - it should use the correct path to libssl3.so. But then the NSS devel support in etch is not quite there.
Gotcha
Which leads me to my next question. The java components, are they only required for running the console on your client machines? So building with NOJAVA=1 will provide a fully working adminserver and ldapserver, just no console binaries?
Mostly correct. The only thing is that the way the console works, it downloads the ds and ds-admin jar files from the admin server. However, if you build them on the client machine and install them into $HOME/.fedora-idm-console/jars then the console will just use the local ones.
Ok, well I tried installing the windows console on one of the windows boxes around here (easier then downloading fc isos :) ), fired up the console and am able to connect and it looks like it wants to work, then it reports back that it can't find the jars. So that being said, is there an easy way to use FC jars, or do I need to build them for debian? (I have started trying to build jss but am having some issues)
To be honest, I haven't really looked into the different post install process' with 1.1.0 since 1.0.4 so the reason I could have missing entries in the console could very well be my own fault :)
Also, if I want to fine tune the location of some of directories during build. is it safe to modify the CONFIGURE_ARGS variable in the adminserver and ldapserver's Makefile? I want to put /opt/dirsrv/etc/dirsrv into /etc/dirsrv aswell as /opt/dirsrv/var into /var?
Yes, for those components whose configure respect --sysconfdir and --localstatedir - which means not the mozilla components (mozldap, etc.) but everything else should work just fine. You'll also have to tweak the --prefix argument which is set by default.
I'll play around with some options. I've started a wiki page for the debian build. I don't have it linked onto the main page, but you can check it out in recent changes.
Ryan
-- Fedora-directory-users mailing list Fedora-directory-users@redhat.com https://www.redhat.com/mailman/listinfo/fedora-directory-users
Tamas Bagyal wrote:
hello Ryan,
you tried this version? i have two fedora-ds 1.0.4 in mmr configuration. i migrate one of those to 1.1 (builded by your and Rich's instrutctions). but i have a problem with memory usage of ns-slapd process. initially mem usage is 18.5% but after 2 hours this changed to 23.1% and growed until killed by kernel. (i think...)
mostly read transactions happen (dns) with a few write (cups). this is a debian etch, mem size is 512 mbyte (i know this is too low, but this is a test environment). cache size of slapd is 67108864.
Are you using SSL? Anything interesting in your server error log?
can you give any help?
thanks,
KeeF
Ryan Braun wrote:
A couple little bugs creeped up during the build. I think it was during the make install of ldapserver. One of the binaries (the first one I guess) was copied to /opt/dirsrv/bin (the bin being a file not a directory) so the /opt/dirsrv/bin directory isn't getting created. Quick fix was just renaming /opt/dirsrv/bin to /opt/dirsrv/bin.something and rerunning make. Executing /opt/dirsrv/bin.something looks like the binary might be ldappasswd?
Probably a bug in ds/mozldap/Makefile in the install section.
I had a peek in there, it looks ok, but I'll add a mkdir -p /opt/dirsrv/bin before the copy loop and see if that works next time I build.
Second, there seems to be a missing library.
Starting admin server . . . output: ERROR: ld.so: object '/opt/dirsrv/lib/libssl3.so' from LD_PRELOAD cannot be preloaded: ignored. output: apache2: Syntax error on line 123 of /opt/dirsrv/etc/dirsrv/admin-serv/httpd.conf: module log_config_module is built-in and can't be loaded Could not start the admin server. Error: 256 Failed to create and configure the admin server Exiting . . .
I assumed the libssl3.so was supposed to be provided by building nss from source. So I just symlinked the system's libssl3.so provided by libnss3-0d back to /opt/dirsrv/lib/.
Ok. Or just edit the start-ds-admin script. Looks like a bug - it should use the correct path to libssl3.so. But then the NSS devel support in etch is not quite there.
Gotcha
Which leads me to my next question. The java components, are they only required for running the console on your client machines? So building with NOJAVA=1 will provide a fully working adminserver and ldapserver, just no console binaries?
Mostly correct. The only thing is that the way the console works, it downloads the ds and ds-admin jar files from the admin server. However, if you build them on the client machine and install them into $HOME/.fedora-idm-console/jars then the console will just use the local ones.
Ok, well I tried installing the windows console on one of the windows boxes around here (easier then downloading fc isos :) ), fired up the console and am able to connect and it looks like it wants to work, then it reports back that it can't find the jars. So that being said, is there an easy way to use FC jars, or do I need to build them for debian? (I have started trying to build jss but am having some issues)
To be honest, I haven't really looked into the different post install process' with 1.1.0 since 1.0.4 so the reason I could have missing entries in the console could very well be my own fault :)
Also, if I want to fine tune the location of some of directories during build. is it safe to modify the CONFIGURE_ARGS variable in the adminserver and ldapserver's Makefile? I want to put /opt/dirsrv/etc/dirsrv into /etc/dirsrv aswell as /opt/dirsrv/var into /var?
Yes, for those components whose configure respect --sysconfdir and --localstatedir - which means not the mozilla components (mozldap, etc.) but everything else should work just fine. You'll also have to tweak the --prefix argument which is set by default.
I'll play around with some options. I've started a wiki page for the debian build. I don't have it linked onto the main page, but you can check it out in recent changes.
Ryan
-- Fedora-directory-users mailing list Fedora-directory-users@redhat.com https://www.redhat.com/mailman/listinfo/fedora-directory-users
-- Fedora-directory-users mailing list Fedora-directory-users@redhat.com https://www.redhat.com/mailman/listinfo/fedora-directory-users
Rich Megginson wrote:
Tamas Bagyal wrote:
hello Ryan,
you tried this version? i have two fedora-ds 1.0.4 in mmr configuration. i migrate one of those to 1.1 (builded by your and Rich's instrutctions). but i have a problem with memory usage of ns-slapd process. initially mem usage is 18.5% but after 2 hours this changed to 23.1% and growed until killed by kernel. (i think...)
mostly read transactions happen (dns) with a few write (cups). this is a debian etch, mem size is 512 mbyte (i know this is too low, but this is a test environment). cache size of slapd is 67108864.
Are you using SSL? Anything interesting in your server error log?
I running the setupssl2.sh but not use any ssl connection. error log shows nothing, only the server start.
can you give any help?
thanks,
KeeF
Ryan Braun wrote:
A couple little bugs creeped up during the build. I think it was during the make install of ldapserver. One of the binaries (the first one I guess) was copied to /opt/dirsrv/bin (the bin being a file not a directory) so the /opt/dirsrv/bin directory isn't getting created. Quick fix was just renaming /opt/dirsrv/bin to /opt/dirsrv/bin.something and rerunning make. Executing /opt/dirsrv/bin.something looks like the binary might be ldappasswd?
Probably a bug in ds/mozldap/Makefile in the install section.
I had a peek in there, it looks ok, but I'll add a mkdir -p /opt/dirsrv/bin before the copy loop and see if that works next time I build.
Second, there seems to be a missing library.
Starting admin server . . . output: ERROR: ld.so: object '/opt/dirsrv/lib/libssl3.so' from LD_PRELOAD cannot be preloaded: ignored. output: apache2: Syntax error on line 123 of /opt/dirsrv/etc/dirsrv/admin-serv/httpd.conf: module log_config_module is built-in and can't be loaded Could not start the admin server. Error: 256 Failed to create and configure the admin server Exiting . . .
I assumed the libssl3.so was supposed to be provided by building nss from source. So I just symlinked the system's libssl3.so provided by libnss3-0d back to /opt/dirsrv/lib/.
Ok. Or just edit the start-ds-admin script. Looks like a bug - it should use the correct path to libssl3.so. But then the NSS devel support in etch is not quite there.
Gotcha
Which leads me to my next question. The java components, are they only required for running the console on your client machines? So building with NOJAVA=1 will provide a fully working adminserver and ldapserver, just no console binaries?
Mostly correct. The only thing is that the way the console works, it downloads the ds and ds-admin jar files from the admin server. However, if you build them on the client machine and install them into $HOME/.fedora-idm-console/jars then the console will just use the local ones.
Ok, well I tried installing the windows console on one of the windows boxes around here (easier then downloading fc isos :) ), fired up the console and am able to connect and it looks like it wants to work, then it reports back that it can't find the jars. So that being said, is there an easy way to use FC jars, or do I need to build them for debian? (I have started trying to build jss but am having some issues)
To be honest, I haven't really looked into the different post install process' with 1.1.0 since 1.0.4 so the reason I could have missing entries in the console could very well be my own fault :)
Also, if I want to fine tune the location of some of directories during build. is it safe to modify the CONFIGURE_ARGS variable in the adminserver and ldapserver's Makefile? I want to put /opt/dirsrv/etc/dirsrv into /etc/dirsrv aswell as /opt/dirsrv/var into /var?
Yes, for those components whose configure respect --sysconfdir and --localstatedir - which means not the mozilla components (mozldap, etc.) but everything else should work just fine. You'll also have to tweak the --prefix argument which is set by default.
I'll play around with some options. I've started a wiki page for the debian build. I don't have it linked onto the main page, but you can check it out in recent changes.
Ryan
-- Fedora-directory-users mailing list Fedora-directory-users@redhat.com https://www.redhat.com/mailman/listinfo/fedora-directory-users
-- Fedora-directory-users mailing list Fedora-directory-users@redhat.com https://www.redhat.com/mailman/listinfo/fedora-directory-users
-- Fedora-directory-users mailing list Fedora-directory-users@redhat.com https://www.redhat.com/mailman/listinfo/fedora-directory-users
Bagyal Tamas wrote:
Rich Megginson wrote:
Tamas Bagyal wrote:
hello Ryan,
you tried this version? i have two fedora-ds 1.0.4 in mmr configuration. i migrate one of those to 1.1 (builded by your and Rich's instrutctions). but i have a problem with memory usage of ns-slapd process. initially mem usage is 18.5% but after 2 hours this changed to 23.1% and growed until killed by kernel. (i think...)
mostly read transactions happen (dns) with a few write (cups). this is a debian etch, mem size is 512 mbyte (i know this is too low, but this is a test environment). cache size of slapd is 67108864.
Are you using SSL? Anything interesting in your server error log?
I running the setupssl2.sh but not use any ssl connection. error log shows nothing, only the server start.
The reason I ask is that older versions of the NSS crypto/SSL libraries had a memory leak. NSS 3.11.7 does not have this problem. But you would only see the problem if you were using SSL connections.
can you give any help?
thanks,
KeeF
Ryan Braun wrote:
A couple little bugs creeped up during the build. I think it was during the make install of ldapserver. One of the binaries (the first one I guess) was copied to /opt/dirsrv/bin (the bin being a file not a directory) so the /opt/dirsrv/bin directory isn't getting created. Quick fix was just renaming /opt/dirsrv/bin to /opt/dirsrv/bin.something and rerunning make. Executing /opt/dirsrv/bin.something looks like the binary might be ldappasswd?
Probably a bug in ds/mozldap/Makefile in the install section.
I had a peek in there, it looks ok, but I'll add a mkdir -p /opt/dirsrv/bin before the copy loop and see if that works next time I build.
Second, there seems to be a missing library.
Starting admin server . . . output: ERROR: ld.so: object '/opt/dirsrv/lib/libssl3.so' from LD_PRELOAD cannot be preloaded: ignored. output: apache2: Syntax error on line 123 of /opt/dirsrv/etc/dirsrv/admin-serv/httpd.conf: module log_config_module is built-in and can't be loaded Could not start the admin server. Error: 256 Failed to create and configure the admin server Exiting . . .
I assumed the libssl3.so was supposed to be provided by building nss from source. So I just symlinked the system's libssl3.so provided by libnss3-0d back to /opt/dirsrv/lib/.
Ok. Or just edit the start-ds-admin script. Looks like a bug - it should use the correct path to libssl3.so. But then the NSS devel support in etch is not quite there.
Gotcha
Which leads me to my next question. The java components, are they only required for running the console on your client machines? So building with NOJAVA=1 will provide a fully working adminserver and ldapserver, just no console binaries?
Mostly correct. The only thing is that the way the console works, it downloads the ds and ds-admin jar files from the admin server. However, if you build them on the client machine and install them into $HOME/.fedora-idm-console/jars then the console will just use the local ones.
Ok, well I tried installing the windows console on one of the windows boxes around here (easier then downloading fc isos :) ), fired up the console and am able to connect and it looks like it wants to work, then it reports back that it can't find the jars. So that being said, is there an easy way to use FC jars, or do I need to build them for debian? (I have started trying to build jss but am having some issues)
To be honest, I haven't really looked into the different post install process' with 1.1.0 since 1.0.4 so the reason I could have missing entries in the console could very well be my own fault :)
Also, if I want to fine tune the location of some of directories during build. is it safe to modify the CONFIGURE_ARGS variable in the adminserver and ldapserver's Makefile? I want to put /opt/dirsrv/etc/dirsrv into /etc/dirsrv aswell as /opt/dirsrv/var into /var?
Yes, for those components whose configure respect --sysconfdir and --localstatedir - which means not the mozilla components (mozldap, etc.) but everything else should work just fine. You'll also have to tweak the --prefix argument which is set by default.
I'll play around with some options. I've started a wiki page for the debian build. I don't have it linked onto the main page, but you can check it out in recent changes.
Ryan
-- Fedora-directory-users mailing list Fedora-directory-users@redhat.com https://www.redhat.com/mailman/listinfo/fedora-directory-users
-- Fedora-directory-users mailing list Fedora-directory-users@redhat.com https://www.redhat.com/mailman/listinfo/fedora-directory-users
-- Fedora-directory-users mailing list Fedora-directory-users@redhat.com https://www.redhat.com/mailman/listinfo/fedora-directory-users
Rich Megginson wrote:
Bagyal Tamas wrote:
Rich Megginson wrote:
Tamas Bagyal wrote:
hello Ryan,
you tried this version? i have two fedora-ds 1.0.4 in mmr configuration. i migrate one of those to 1.1 (builded by your and Rich's instrutctions). but i have a problem with memory usage of ns-slapd process. initially mem usage is 18.5% but after 2 hours this changed to 23.1% and growed until killed by kernel. (i think...)
mostly read transactions happen (dns) with a few write (cups). this is a debian etch, mem size is 512 mbyte (i know this is too low, but this is a test environment). cache size of slapd is 67108864.
Are you using SSL? Anything interesting in your server error log?
I running the setupssl2.sh but not use any ssl connection. error log shows nothing, only the server start.
The reason I ask is that older versions of the NSS crypto/SSL libraries had a memory leak. NSS 3.11.7 does not have this problem. But you would only see the problem if you were using SSL connections.
ok. I tried again from begining. fresh install, no ssl, no migration, used the setup-ds-admi.pl and setup the mmr with a fedora-ds 1.0.4. but nothing changed, memory usage growing... All setting is default except the mmr/changelog and access.log is off.
errors:
Fedora-Directory/1.1.0 B2008.059.1017
tower.fmintra.hu:389 (/opt/dirsrv/etc/dirsrv/slapd-tower)
[05/Mar/2008:10:19:20 +0100] - dblayer_instance_start: pagesize: 4096, pages: 128798, procpages: 5983 [05/Mar/2008:10:19:20 +0100] - cache autosizing: import cache: 204800k
[05/Mar/2008:10:19:21 +0100] - li_import_cache_autosize: 50, import_pages: 51200, pagesize: 4096
[05/Mar/2008:10:19:21 +0100] - WARNING: Import is running with nsslapd-db-private-import-mem on; No other process is allowed to access the database [05/Mar/2008:10:19:21 +0100] - dblayer_instance_start: pagesize: 4096, pages: 128798, procpages: 5983 [05/Mar/2008:10:19:21 +0100] - cache autosizing: import cache: 204800k
[05/Mar/2008:10:19:21 +0100] - li_import_cache_autosize: 50, import_pages: 51200, pagesize: 4096
[05/Mar/2008:10:19:21 +0100] - import userRoot: Beginning import job...
[05/Mar/2008:10:19:21 +0100] - import userRoot: Index buffering enabled with bucket size 100 [05/Mar/2008:10:19:21 +0100] - import userRoot: Processing file "/tmp/ldifZHth0D.ldif"
[05/Mar/2008:10:19:21 +0100] - import userRoot: Finished scanning file "/tmp/ldifZHth0D.ldif" (9 entries)
[05/Mar/2008:10:19:21 +0100] - import userRoot: Workers finished; cleaning up...
[05/Mar/2008:10:19:21 +0100] - import userRoot: Workers cleaned up.
[05/Mar/2008:10:19:21 +0100] - import userRoot: Cleaning up producer thread...
[05/Mar/2008:10:19:21 +0100] - import userRoot: Indexing complete. Post-processing...
[05/Mar/2008:10:19:21 +0100] - import userRoot: Flushing caches...
[05/Mar/2008:10:19:21 +0100] - import userRoot: Closing files...
[05/Mar/2008:10:19:21 +0100] - All database threads now stopped
[05/Mar/2008:10:19:21 +0100] - import userRoot: Import complete. Processed 9 entries in 0 seconds. (inf entries/sec) [05/Mar/2008:10:19:22 +0100] - Fedora-Directory/1.1.0 B2008.059.1017 starting up
[05/Mar/2008:10:19:22 +0100] - I'm resizing my cache now...cache was 209715200 and is now 8000000 [05/Mar/2008:10:19:22 +0100] - slapd started. Listening on All Interfaces port 389 for LDAP requests [05/Mar/2008:10:22:23 +0100] NSMMReplicationPlugin - changelog program - cl5Open: failed to open changelog
[05/Mar/2008:10:22:24 +0100] NSMMReplicationPlugin - changelog program - changelog5_config_add: failed to start changelog
[05/Mar/2008:10:26:49 +0100] NSMMReplicationPlugin - agmt="cn=replica to backup" (backup:389): Replica has a different generation ID than the local data. [05/Mar/2008:10:32:00 +0100] NSMMReplicationPlugin - repl_set_mtn_referrals: could not set referrals for replica dc=fmintra,dc=hu: 32 [05/Mar/2008:10:32:00 +0100] NSMMReplicationPlugin - multimaster_be_state_change: replica dc=fmintra,dc=hu is going offline; disabling replication [05/Mar/2008:10:32:00 +0100] - WARNING: Import is running with nsslapd-db-private-import-mem on; No other process is allowed to access the database [05/Mar/2008:10:32:13 +0100] - import userRoot: Workers finished; cleaning up...
[05/Mar/2008:10:32:13 +0100] - import userRoot: Workers cleaned up.
[05/Mar/2008:10:32:13 +0100] - import userRoot: Indexing complete. Post-processing...
[05/Mar/2008:10:32:13 +0100] - import userRoot: Flushing caches...
[05/Mar/2008:10:32:13 +0100] - import userRoot: Closing files...
[05/Mar/2008:10:32:14 +0100] - import userRoot: Import complete. Processed 12242 entries in 13 seconds. (941.69 entries/sec)
[05/Mar/2008:10:32:14 +0100] NSMMReplicationPlugin - multimaster_be_state_change: replica dc=fmintra,dc=hu is coming online; enabling replication
memory usage by top:
top - 10:58:21 up 25 days, 22:36, 2 users, load average: 0.01, 0.13, 0.22 Tasks: 61 total, 2 running, 59 sleeping, 0 stopped, 0 zombie Cpu(s): 0.0%us, 0.0%sy, 0.0%ni,100.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 515192k total, 189600k used, 325592k free, 36472k buffers Swap: 489848k total, 18292k used, 471556k free, 106188k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
27647 fds 15 0 464m 47m 25m S 0.0 9.4 1:34.57 ns-slapd
top - 11:23:12 up 25 days, 23:01, 2 users, load average: 0.36, 0.27, 0.20 Tasks: 61 total, 2 running, 59 sleeping, 0 stopped, 0 zombie Cpu(s): 3.0%us, 0.0%sy, 0.0%ni, 96.0%id, 1.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 515192k total, 210700k used, 304492k free, 36488k buffers Swap: 489848k total, 18288k used, 471560k free, 117204k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
27647 fds 15 0 473m 59m 28m S 3.0 11.9 2:52.77 ns-slapd
top - 11:48:26 up 25 days, 23:26, 2 users, load average: 0.02, 0.08, 0.10 Tasks: 61 total, 1 running, 60 sleeping, 0 stopped, 0 zombie Cpu(s): 3.0%us, 0.0%sy, 0.0%ni, 97.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 515192k total, 222756k used, 292436k free, 36520k buffers Swap: 489848k total, 18288k used, 471560k free, 118932k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
27647 fds 15 0 483m 72m 30m S 0.0 14.4 4:12.04 ns-slapd
top - 13:31:42 up 26 days, 1:09, 2 users, load average: 0.28, 0.17, 0.15 Tasks: 61 total, 2 running, 59 sleeping, 0 stopped, 0 zombie Cpu(s): 1.1%us, 0.0%sy, 0.0%ni, 98.9%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 515192k total, 285572k used, 229620k free, 36540k buffers Swap: 489848k total, 18288k used, 471560k free, 140412k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
27647 fds 15 0 523m 116m 34m S 0.0 23.3 9:35.65 ns-slapd
can you give any help?
thanks,
KeeF
Ryan Braun wrote:
> A couple little bugs creeped up during the build. I think it was > during > the make install of ldapserver. One of the binaries (the first > one I > guess) was copied to /opt/dirsrv/bin (the bin being a file not a > directory) so the /opt/dirsrv/bin directory isn't getting > created. Quick > fix was just renaming /opt/dirsrv/bin to > /opt/dirsrv/bin.something and > rerunning make. Executing /opt/dirsrv/bin.something looks like > the binary > might be ldappasswd? Probably a bug in ds/mozldap/Makefile in the install section.
I had a peek in there, it looks ok, but I'll add a mkdir -p /opt/dirsrv/bin before the copy loop and see if that works next time I build.
> Second, there seems to be a missing library. > > Starting admin server . . . > output: ERROR: ld.so: object '/opt/dirsrv/lib/libssl3.so' from > LD_PRELOAD > cannot be preloaded: ignored. > output: apache2: Syntax error on line 123 > of /opt/dirsrv/etc/dirsrv/admin-serv/httpd.conf: module > log_config_module > is built-in and can't be loaded > Could not start the admin server. Error: 256 > Failed to create and configure the admin server > Exiting . . . > > I assumed the libssl3.so was supposed to be provided by building > nss from > source. So I just symlinked the system's libssl3.so provided by > libnss3-0d back to /opt/dirsrv/lib/. Ok. Or just edit the start-ds-admin script. Looks like a bug - it should use the correct path to libssl3.so. But then the NSS devel support in etch is not quite there.
Gotcha
> Which leads me to my next question. The java components, are > they only > required for running the console on your client machines? So > building > with NOJAVA=1 will provide a fully working adminserver and > ldapserver, just no console binaries? Mostly correct. The only thing is that the way the console works, it downloads the ds and ds-admin jar files from the admin server. However, if you build them on the client machine and install them into $HOME/.fedora-idm-console/jars then the console will just use the local ones.
Ok, well I tried installing the windows console on one of the windows boxes around here (easier then downloading fc isos :) ), fired up the console and am able to connect and it looks like it wants to work, then it reports back that it can't find the jars. So that being said, is there an easy way to use FC jars, or do I need to build them for debian? (I have started trying to build jss but am having some issues)
> To be honest, I haven't really looked into the different post > install > process' with 1.1.0 since 1.0.4 so the reason I could have missing > entries in the console could very well be my own fault :) > > Also, if I want to fine tune the location of some of directories > during > build. is it safe to modify the CONFIGURE_ARGS variable in the > adminserver and ldapserver's Makefile? I want to put > /opt/dirsrv/etc/dirsrv into /etc/dirsrv aswell as /opt/dirsrv/var > into > /var? Yes, for those components whose configure respect --sysconfdir and --localstatedir - which means not the mozilla components (mozldap, etc.) but everything else should work just fine. You'll also have to tweak the --prefix argument which is set by default.
I'll play around with some options. I've started a wiki page for the debian build. I don't have it linked onto the main page, but you can check it out in recent changes.
Ryan
Tamas Bagyal wrote:
Rich Megginson wrote:
Bagyal Tamas wrote:
Rich Megginson wrote:
Tamas Bagyal wrote:
hello Ryan,
you tried this version? i have two fedora-ds 1.0.4 in mmr configuration. i migrate one of those to 1.1 (builded by your and Rich's instrutctions). but i have a problem with memory usage of ns-slapd process. initially mem usage is 18.5% but after 2 hours this changed to 23.1% and growed until killed by kernel. (i think...)
mostly read transactions happen (dns) with a few write (cups). this is a debian etch, mem size is 512 mbyte (i know this is too low, but this is a test environment). cache size of slapd is 67108864.
Are you using SSL? Anything interesting in your server error log?
I running the setupssl2.sh but not use any ssl connection. error log shows nothing, only the server start.
The reason I ask is that older versions of the NSS crypto/SSL libraries had a memory leak. NSS 3.11.7 does not have this problem. But you would only see the problem if you were using SSL connections.
ok. I tried again from begining. fresh install, no ssl, no migration, used the setup-ds-admi.pl and setup the mmr with a fedora-ds 1.0.4. but nothing changed, memory usage growing... All setting is default except the mmr/changelog and access.log is off.
errors:
Fedora-Directory/1.1.0 B2008.059.1017 tower.fmintra.hu:389 (/opt/dirsrv/etc/dirsrv/slapd-tower)
[05/Mar/2008:10:19:20 +0100] - dblayer_instance_start: pagesize: 4096, pages: 128798, procpages: 5983 [05/Mar/2008:10:19:20 +0100] - cache autosizing: import cache: 204800k [05/Mar/2008:10:19:21 +0100] - li_import_cache_autosize: 50, import_pages: 51200, pagesize: 4096 [05/Mar/2008:10:19:21 +0100] - WARNING: Import is running with nsslapd-db-private-import-mem on; No other process is allowed to access the database [05/Mar/2008:10:19:21 +0100] - dblayer_instance_start: pagesize: 4096, pages: 128798, procpages: 5983 [05/Mar/2008:10:19:21 +0100] - cache autosizing: import cache: 204800k [05/Mar/2008:10:19:21 +0100] - li_import_cache_autosize: 50, import_pages: 51200, pagesize: 4096 [05/Mar/2008:10:19:21 +0100] - import userRoot: Beginning import job... [05/Mar/2008:10:19:21 +0100] - import userRoot: Index buffering enabled with bucket size 100 [05/Mar/2008:10:19:21 +0100] - import userRoot: Processing file "/tmp/ldifZHth0D.ldif" [05/Mar/2008:10:19:21 +0100] - import userRoot: Finished scanning file "/tmp/ldifZHth0D.ldif" (9 entries) [05/Mar/2008:10:19:21 +0100] - import userRoot: Workers finished; cleaning up... [05/Mar/2008:10:19:21 +0100] - import userRoot: Workers cleaned up. [05/Mar/2008:10:19:21 +0100] - import userRoot: Cleaning up producer thread... [05/Mar/2008:10:19:21 +0100] - import userRoot: Indexing complete. Post-processing... [05/Mar/2008:10:19:21 +0100] - import userRoot: Flushing caches... [05/Mar/2008:10:19:21 +0100] - import userRoot: Closing files... [05/Mar/2008:10:19:21 +0100] - All database threads now stopped [05/Mar/2008:10:19:21 +0100] - import userRoot: Import complete. Processed 9 entries in 0 seconds. (inf entries/sec) [05/Mar/2008:10:19:22 +0100] - Fedora-Directory/1.1.0 B2008.059.1017 starting up [05/Mar/2008:10:19:22 +0100] - I'm resizing my cache now...cache was 209715200 and is now 8000000 [05/Mar/2008:10:19:22 +0100] - slapd started. Listening on All Interfaces port 389 for LDAP requests [05/Mar/2008:10:22:23 +0100] NSMMReplicationPlugin - changelog program
- cl5Open: failed to open changelog
[05/Mar/2008:10:22:24 +0100] NSMMReplicationPlugin - changelog program
- changelog5_config_add: failed to start changelog
[05/Mar/2008:10:26:49 +0100] NSMMReplicationPlugin - agmt="cn=replica to backup" (backup:389): Replica has a different generation ID than the local data. [05/Mar/2008:10:32:00 +0100] NSMMReplicationPlugin - repl_set_mtn_referrals: could not set referrals for replica dc=fmintra,dc=hu: 32 [05/Mar/2008:10:32:00 +0100] NSMMReplicationPlugin - multimaster_be_state_change: replica dc=fmintra,dc=hu is going offline; disabling replication [05/Mar/2008:10:32:00 +0100] - WARNING: Import is running with nsslapd-db-private-import-mem on; No other process is allowed to access the database [05/Mar/2008:10:32:13 +0100] - import userRoot: Workers finished; cleaning up... [05/Mar/2008:10:32:13 +0100] - import userRoot: Workers cleaned up. [05/Mar/2008:10:32:13 +0100] - import userRoot: Indexing complete. Post-processing... [05/Mar/2008:10:32:13 +0100] - import userRoot: Flushing caches... [05/Mar/2008:10:32:13 +0100] - import userRoot: Closing files... [05/Mar/2008:10:32:14 +0100] - import userRoot: Import complete. Processed 12242 entries in 13 seconds. (941.69 entries/sec) [05/Mar/2008:10:32:14 +0100] NSMMReplicationPlugin - multimaster_be_state_change: replica dc=fmintra,dc=hu is coming online; enabling replication
memory usage by top:
top - 10:58:21 up 25 days, 22:36, 2 users, load average: 0.01, 0.13, 0.22 Tasks: 61 total, 2 running, 59 sleeping, 0 stopped, 0 zombie Cpu(s): 0.0%us, 0.0%sy, 0.0%ni,100.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 515192k total, 189600k used, 325592k free, 36472k buffers Swap: 489848k total, 18292k used, 471556k free, 106188k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 27647 fds 15 0 464m 47m 25m S 0.0 9.4 1:34.57 ns-slapd
top - 11:23:12 up 25 days, 23:01, 2 users, load average: 0.36, 0.27, 0.20 Tasks: 61 total, 2 running, 59 sleeping, 0 stopped, 0 zombie Cpu(s): 3.0%us, 0.0%sy, 0.0%ni, 96.0%id, 1.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 515192k total, 210700k used, 304492k free, 36488k buffers Swap: 489848k total, 18288k used, 471560k free, 117204k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 27647 fds 15 0 473m 59m 28m S 3.0 11.9 2:52.77 ns-slapd
top - 11:48:26 up 25 days, 23:26, 2 users, load average: 0.02, 0.08, 0.10 Tasks: 61 total, 1 running, 60 sleeping, 0 stopped, 0 zombie Cpu(s): 3.0%us, 0.0%sy, 0.0%ni, 97.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 515192k total, 222756k used, 292436k free, 36520k buffers Swap: 489848k total, 18288k used, 471560k free, 118932k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 27647 fds 15 0 483m 72m 30m S 0.0 14.4 4:12.04 ns-slapd
top - 13:31:42 up 26 days, 1:09, 2 users, load average: 0.28, 0.17, 0.15 Tasks: 61 total, 2 running, 59 sleeping, 0 stopped, 0 zombie Cpu(s): 1.1%us, 0.0%sy, 0.0%ni, 98.9%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 515192k total, 285572k used, 229620k free, 36540k buffers Swap: 489848k total, 18288k used, 471560k free, 140412k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 27647 fds 15 0 523m 116m 34m S 0.0 23.3 9:35.65 ns-slapd
Can you post your dse.ldif to pastebin.com? Be sure to omit or obscure any sensitive data first. I'd like to see what all of your cache settings are. Normally the server will increase in memory usage until the caches are full, then memory usage should level off. The speed at which this occurs depends on usage.
When the kernel kills your server, how much memory is it using? Is there anything in the server error log at around the time the kernel kills it?
Finally, if you are convinced that there is a real memory leak in the server, would it be possible for you to run it under valgrind? Just running it under valgrind for 30 minutes or so should reveal any memory leaks in normal usage.
can you give any help?
thanks,
KeeF
Ryan Braun wrote:
>> A couple little bugs creeped up during the build. I think it >> was during >> the make install of ldapserver. One of the binaries (the first >> one I >> guess) was copied to /opt/dirsrv/bin (the bin being a file not a >> directory) so the /opt/dirsrv/bin directory isn't getting >> created. Quick >> fix was just renaming /opt/dirsrv/bin to >> /opt/dirsrv/bin.something and >> rerunning make. Executing /opt/dirsrv/bin.something looks like >> the binary >> might be ldappasswd? > Probably a bug in ds/mozldap/Makefile in the install section.
I had a peek in there, it looks ok, but I'll add a mkdir -p /opt/dirsrv/bin before the copy loop and see if that works next time I build. >> Second, there seems to be a missing library. >> >> Starting admin server . . . >> output: ERROR: ld.so: object '/opt/dirsrv/lib/libssl3.so' from >> LD_PRELOAD >> cannot be preloaded: ignored. >> output: apache2: Syntax error on line 123 >> of /opt/dirsrv/etc/dirsrv/admin-serv/httpd.conf: module >> log_config_module >> is built-in and can't be loaded >> Could not start the admin server. Error: 256 >> Failed to create and configure the admin server >> Exiting . . . >> >> I assumed the libssl3.so was supposed to be provided by >> building nss from >> source. So I just symlinked the system's libssl3.so provided by >> libnss3-0d back to /opt/dirsrv/lib/. > Ok. Or just edit the start-ds-admin script. Looks like a bug - it > should use the correct path to libssl3.so. But then the NSS devel > support in etch is not quite there.
Gotcha
>> Which leads me to my next question. The java components, are >> they only >> required for running the console on your client machines? So >> building >> with NOJAVA=1 will provide a fully working adminserver and >> ldapserver, just no console binaries? > Mostly correct. The only thing is that the way the console > works, it > downloads the ds and ds-admin jar files from the admin server. > However, > if you build them on the client machine and install them into > $HOME/.fedora-idm-console/jars then the console will just use > the local > ones.
Ok, well I tried installing the windows console on one of the windows boxes around here (easier then downloading fc isos :) ), fired up the console and am able to connect and it looks like it wants to work, then it reports back that it can't find the jars. So that being said, is there an easy way to use FC jars, or do I need to build them for debian? (I have started trying to build jss but am having some issues)
>> To be honest, I haven't really looked into the different post >> install >> process' with 1.1.0 since 1.0.4 so the reason I could have missing >> entries in the console could very well be my own fault :) >> >> Also, if I want to fine tune the location of some of >> directories during >> build. is it safe to modify the CONFIGURE_ARGS variable in the >> adminserver and ldapserver's Makefile? I want to put >> /opt/dirsrv/etc/dirsrv into /etc/dirsrv aswell as >> /opt/dirsrv/var into >> /var? > Yes, for those components whose configure respect --sysconfdir and > --localstatedir - which means not the mozilla components > (mozldap, etc.) > but everything else should work just fine. You'll also have to > tweak > the --prefix argument which is set by default.
I'll play around with some options. I've started a wiki page for the debian build. I don't have it linked onto the main page, but you can check it out in recent changes.
Ryan
-- Fedora-directory-users mailing list Fedora-directory-users@redhat.com https://www.redhat.com/mailman/listinfo/fedora-directory-users
Rich Megginson wrote:
Tamas Bagyal wrote:
Rich Megginson wrote:
Bagyal Tamas wrote:
Rich Megginson wrote:
Tamas Bagyal wrote:
hello Ryan,
you tried this version? i have two fedora-ds 1.0.4 in mmr configuration. i migrate one of those to 1.1 (builded by your and Rich's instrutctions). but i have a problem with memory usage of ns-slapd process. initially mem usage is 18.5% but after 2 hours this changed to 23.1% and growed until killed by kernel. (i think...)
mostly read transactions happen (dns) with a few write (cups). this is a debian etch, mem size is 512 mbyte (i know this is too low, but this is a test environment). cache size of slapd is 67108864.
Are you using SSL? Anything interesting in your server error log?
I running the setupssl2.sh but not use any ssl connection. error log shows nothing, only the server start.
The reason I ask is that older versions of the NSS crypto/SSL libraries had a memory leak. NSS 3.11.7 does not have this problem. But you would only see the problem if you were using SSL connections.
ok. I tried again from begining. fresh install, no ssl, no migration, used the setup-ds-admi.pl and setup the mmr with a fedora-ds 1.0.4. but nothing changed, memory usage growing... All setting is default except the mmr/changelog and access.log is off.
errors:
Fedora-Directory/1.1.0 B2008.059.1017 tower.fmintra.hu:389 (/opt/dirsrv/etc/dirsrv/slapd-tower)
[05/Mar/2008:10:19:20 +0100] - dblayer_instance_start: pagesize: 4096, pages: 128798, procpages: 5983 [05/Mar/2008:10:19:20 +0100] - cache autosizing: import cache: 204800k [05/Mar/2008:10:19:21 +0100] - li_import_cache_autosize: 50, import_pages: 51200, pagesize: 4096 [05/Mar/2008:10:19:21 +0100] - WARNING: Import is running with nsslapd-db-private-import-mem on; No other process is allowed to access the database [05/Mar/2008:10:19:21 +0100] - dblayer_instance_start: pagesize: 4096, pages: 128798, procpages: 5983 [05/Mar/2008:10:19:21 +0100] - cache autosizing: import cache: 204800k [05/Mar/2008:10:19:21 +0100] - li_import_cache_autosize: 50, import_pages: 51200, pagesize: 4096 [05/Mar/2008:10:19:21 +0100] - import userRoot: Beginning import job... [05/Mar/2008:10:19:21 +0100] - import userRoot: Index buffering enabled with bucket size 100 [05/Mar/2008:10:19:21 +0100] - import userRoot: Processing file "/tmp/ldifZHth0D.ldif" [05/Mar/2008:10:19:21 +0100] - import userRoot: Finished scanning file "/tmp/ldifZHth0D.ldif" (9 entries) [05/Mar/2008:10:19:21 +0100] - import userRoot: Workers finished; cleaning up... [05/Mar/2008:10:19:21 +0100] - import userRoot: Workers cleaned up. [05/Mar/2008:10:19:21 +0100] - import userRoot: Cleaning up producer thread... [05/Mar/2008:10:19:21 +0100] - import userRoot: Indexing complete. Post-processing... [05/Mar/2008:10:19:21 +0100] - import userRoot: Flushing caches... [05/Mar/2008:10:19:21 +0100] - import userRoot: Closing files... [05/Mar/2008:10:19:21 +0100] - All database threads now stopped [05/Mar/2008:10:19:21 +0100] - import userRoot: Import complete. Processed 9 entries in 0 seconds. (inf entries/sec) [05/Mar/2008:10:19:22 +0100] - Fedora-Directory/1.1.0 B2008.059.1017 starting up [05/Mar/2008:10:19:22 +0100] - I'm resizing my cache now...cache was 209715200 and is now 8000000 [05/Mar/2008:10:19:22 +0100] - slapd started. Listening on All Interfaces port 389 for LDAP requests [05/Mar/2008:10:22:23 +0100] NSMMReplicationPlugin - changelog program
- cl5Open: failed to open changelog
[05/Mar/2008:10:22:24 +0100] NSMMReplicationPlugin - changelog program
- changelog5_config_add: failed to start changelog
[05/Mar/2008:10:26:49 +0100] NSMMReplicationPlugin - agmt="cn=replica to backup" (backup:389): Replica has a different generation ID than the local data. [05/Mar/2008:10:32:00 +0100] NSMMReplicationPlugin - repl_set_mtn_referrals: could not set referrals for replica dc=fmintra,dc=hu: 32 [05/Mar/2008:10:32:00 +0100] NSMMReplicationPlugin - multimaster_be_state_change: replica dc=fmintra,dc=hu is going offline; disabling replication [05/Mar/2008:10:32:00 +0100] - WARNING: Import is running with nsslapd-db-private-import-mem on; No other process is allowed to access the database [05/Mar/2008:10:32:13 +0100] - import userRoot: Workers finished; cleaning up... [05/Mar/2008:10:32:13 +0100] - import userRoot: Workers cleaned up. [05/Mar/2008:10:32:13 +0100] - import userRoot: Indexing complete. Post-processing... [05/Mar/2008:10:32:13 +0100] - import userRoot: Flushing caches... [05/Mar/2008:10:32:13 +0100] - import userRoot: Closing files... [05/Mar/2008:10:32:14 +0100] - import userRoot: Import complete. Processed 12242 entries in 13 seconds. (941.69 entries/sec) [05/Mar/2008:10:32:14 +0100] NSMMReplicationPlugin - multimaster_be_state_change: replica dc=fmintra,dc=hu is coming online; enabling replication
memory usage by top:
top - 10:58:21 up 25 days, 22:36, 2 users, load average: 0.01, 0.13, 0.22 Tasks: 61 total, 2 running, 59 sleeping, 0 stopped, 0 zombie Cpu(s): 0.0%us, 0.0%sy, 0.0%ni,100.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 515192k total, 189600k used, 325592k free, 36472k buffers Swap: 489848k total, 18292k used, 471556k free, 106188k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 27647 fds 15 0 464m 47m 25m S 0.0 9.4 1:34.57 ns-slapd
top - 11:23:12 up 25 days, 23:01, 2 users, load average: 0.36, 0.27, 0.20 Tasks: 61 total, 2 running, 59 sleeping, 0 stopped, 0 zombie Cpu(s): 3.0%us, 0.0%sy, 0.0%ni, 96.0%id, 1.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 515192k total, 210700k used, 304492k free, 36488k buffers Swap: 489848k total, 18288k used, 471560k free, 117204k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 27647 fds 15 0 473m 59m 28m S 3.0 11.9 2:52.77 ns-slapd
top - 11:48:26 up 25 days, 23:26, 2 users, load average: 0.02, 0.08, 0.10 Tasks: 61 total, 1 running, 60 sleeping, 0 stopped, 0 zombie Cpu(s): 3.0%us, 0.0%sy, 0.0%ni, 97.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 515192k total, 222756k used, 292436k free, 36520k buffers Swap: 489848k total, 18288k used, 471560k free, 118932k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 27647 fds 15 0 483m 72m 30m S 0.0 14.4 4:12.04 ns-slapd
top - 13:31:42 up 26 days, 1:09, 2 users, load average: 0.28, 0.17, 0.15 Tasks: 61 total, 2 running, 59 sleeping, 0 stopped, 0 zombie Cpu(s): 1.1%us, 0.0%sy, 0.0%ni, 98.9%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 515192k total, 285572k used, 229620k free, 36540k buffers Swap: 489848k total, 18288k used, 471560k free, 140412k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 27647 fds 15 0 523m 116m 34m S 0.0 23.3 9:35.65 ns-slapd
Can you post your dse.ldif to pastebin.com? Be sure to omit or obscure any sensitive data first. I'd like to see what all of your cache settings are. Normally the server will increase in memory usage until the caches are full, then memory usage should level off. The speed at which this occurs depends on usage.
i forget a thing. i use some custom schema (ldapdns, ibm... etc.) if this is changed anything. (but i think this is not relevant info)
When the kernel kills your server, how much memory is it using? Is there anything in the server error log at around the time the kernel kills it?
i'm not sure, but at the time use the maximum as possible (512ram + 512 swap available) i think around 940mb, the kernel first kill some other processes, like mc, and after these the ns-slapd. I can't see anything in the log file, just the server start.
Finally, if you are convinced that there is a real memory leak in the server, would it be possible for you to run it under valgrind? Just running it under valgrind for 30 minutes or so should reveal any memory leaks in normal usage.
I can't understand this output, I never used valgrind before. I hope used the right options for valgrind.
can you give any help?
thanks,
KeeF
Ryan Braun wrote: >>> A couple little bugs creeped up during the build. I think it >>> was during >>> the make install of ldapserver. One of the binaries (the first >>> one I >>> guess) was copied to /opt/dirsrv/bin (the bin being a file not a >>> directory) so the /opt/dirsrv/bin directory isn't getting >>> created. Quick >>> fix was just renaming /opt/dirsrv/bin to >>> /opt/dirsrv/bin.something and >>> rerunning make. Executing /opt/dirsrv/bin.something looks like >>> the binary >>> might be ldappasswd? >> Probably a bug in ds/mozldap/Makefile in the install section. > > I had a peek in there, it looks ok, but I'll add a mkdir -p > /opt/dirsrv/bin before the copy loop and see if that works next > time I build. >>> Second, there seems to be a missing library. >>> >>> Starting admin server . . . >>> output: ERROR: ld.so: object '/opt/dirsrv/lib/libssl3.so' from >>> LD_PRELOAD >>> cannot be preloaded: ignored. >>> output: apache2: Syntax error on line 123 >>> of /opt/dirsrv/etc/dirsrv/admin-serv/httpd.conf: module >>> log_config_module >>> is built-in and can't be loaded >>> Could not start the admin server. Error: 256 >>> Failed to create and configure the admin server >>> Exiting . . . >>> >>> I assumed the libssl3.so was supposed to be provided by >>> building nss from >>> source. So I just symlinked the system's libssl3.so provided by >>> libnss3-0d back to /opt/dirsrv/lib/. >> Ok. Or just edit the start-ds-admin script. Looks like a bug - it >> should use the correct path to libssl3.so. But then the NSS devel >> support in etch is not quite there. > > Gotcha > >>> Which leads me to my next question. The java components, are >>> they only >>> required for running the console on your client machines? So >>> building >>> with NOJAVA=1 will provide a fully working adminserver and >>> ldapserver, just no console binaries? >> Mostly correct. The only thing is that the way the console >> works, it >> downloads the ds and ds-admin jar files from the admin server. >> However, >> if you build them on the client machine and install them into >> $HOME/.fedora-idm-console/jars then the console will just use >> the local >> ones. > > Ok, well I tried installing the windows console on one of the > windows boxes around here (easier then downloading fc isos :) ), > fired up the console and am able to connect and it looks like it > wants to work, then it reports back that it can't find the > jars. So that being said, is there an easy way to use FC jars, > or do I need to build them for debian? (I have started trying to > build jss but am having some issues) > >>> To be honest, I haven't really looked into the different post >>> install >>> process' with 1.1.0 since 1.0.4 so the reason I could have missing >>> entries in the console could very well be my own fault :) >>> >>> Also, if I want to fine tune the location of some of >>> directories during >>> build. is it safe to modify the CONFIGURE_ARGS variable in the >>> adminserver and ldapserver's Makefile? I want to put >>> /opt/dirsrv/etc/dirsrv into /etc/dirsrv aswell as >>> /opt/dirsrv/var into >>> /var? >> Yes, for those components whose configure respect --sysconfdir and >> --localstatedir - which means not the mozilla components >> (mozldap, etc.) >> but everything else should work just fine. You'll also have to >> tweak >> the --prefix argument which is set by default. > > I'll play around with some options. I've started a wiki page for > the debian build. I don't have it linked onto the main page, > but you can check it out in recent changes. > > Ryan >
-- Fedora-directory-users mailing list Fedora-directory-users@redhat.com https://www.redhat.com/mailman/listinfo/fedora-directory-users
-- Fedora-directory-users mailing list Fedora-directory-users@redhat.com https://www.redhat.com/mailman/listinfo/fedora-directory-users
Tamas Bagyal wrote:
Rich Megginson wrote:
Tamas Bagyal wrote:
Rich Megginson wrote:
Bagyal Tamas wrote:
Rich Megginson wrote:
Tamas Bagyal wrote: > hello Ryan, > > you tried this version? i have two fedora-ds 1.0.4 in mmr > configuration. i migrate one of those to 1.1 (builded by your and > Rich's instrutctions). but i have a problem with memory usage of > ns-slapd process. initially mem usage is 18.5% but after 2 hours > this changed to 23.1% and growed until killed by kernel. (i > think...) > > mostly read transactions happen (dns) with a few write (cups). > this is a debian etch, mem size is 512 mbyte (i know this is too > low, but this is a test environment). cache size of slapd is > 67108864. Are you using SSL? Anything interesting in your server error log?
I running the setupssl2.sh but not use any ssl connection. error log shows nothing, only the server start.
The reason I ask is that older versions of the NSS crypto/SSL libraries had a memory leak. NSS 3.11.7 does not have this problem. But you would only see the problem if you were using SSL connections.
ok. I tried again from begining. fresh install, no ssl, no migration, used the setup-ds-admi.pl and setup the mmr with a fedora-ds 1.0.4. but nothing changed, memory usage growing... All setting is default except the mmr/changelog and access.log is off.
errors:
Fedora-Directory/1.1.0 B2008.059.1017 tower.fmintra.hu:389 (/opt/dirsrv/etc/dirsrv/slapd-tower)
[05/Mar/2008:10:19:20 +0100] - dblayer_instance_start: pagesize: 4096, pages: 128798, procpages: 5983 [05/Mar/2008:10:19:20 +0100] - cache autosizing: import cache: 204800k [05/Mar/2008:10:19:21 +0100] - li_import_cache_autosize: 50, import_pages: 51200, pagesize: 4096 [05/Mar/2008:10:19:21 +0100] - WARNING: Import is running with nsslapd-db-private-import-mem on; No other process is allowed to access the database [05/Mar/2008:10:19:21 +0100] - dblayer_instance_start: pagesize: 4096, pages: 128798, procpages: 5983 [05/Mar/2008:10:19:21 +0100] - cache autosizing: import cache: 204800k [05/Mar/2008:10:19:21 +0100] - li_import_cache_autosize: 50, import_pages: 51200, pagesize: 4096 [05/Mar/2008:10:19:21 +0100] - import userRoot: Beginning import job... [05/Mar/2008:10:19:21 +0100] - import userRoot: Index buffering enabled with bucket size 100 [05/Mar/2008:10:19:21 +0100] - import userRoot: Processing file "/tmp/ldifZHth0D.ldif" [05/Mar/2008:10:19:21 +0100] - import userRoot: Finished scanning file "/tmp/ldifZHth0D.ldif" (9 entries) [05/Mar/2008:10:19:21 +0100] - import userRoot: Workers finished; cleaning up... [05/Mar/2008:10:19:21 +0100] - import userRoot: Workers cleaned up. [05/Mar/2008:10:19:21 +0100] - import userRoot: Cleaning up producer thread... [05/Mar/2008:10:19:21 +0100] - import userRoot: Indexing complete. Post-processing... [05/Mar/2008:10:19:21 +0100] - import userRoot: Flushing caches... [05/Mar/2008:10:19:21 +0100] - import userRoot: Closing files... [05/Mar/2008:10:19:21 +0100] - All database threads now stopped [05/Mar/2008:10:19:21 +0100] - import userRoot: Import complete. Processed 9 entries in 0 seconds. (inf entries/sec) [05/Mar/2008:10:19:22 +0100] - Fedora-Directory/1.1.0 B2008.059.1017 starting up [05/Mar/2008:10:19:22 +0100] - I'm resizing my cache now...cache was 209715200 and is now 8000000 [05/Mar/2008:10:19:22 +0100] - slapd started. Listening on All Interfaces port 389 for LDAP requests [05/Mar/2008:10:22:23 +0100] NSMMReplicationPlugin - changelog program - cl5Open: failed to open changelog [05/Mar/2008:10:22:24 +0100] NSMMReplicationPlugin - changelog program - changelog5_config_add: failed to start changelog [05/Mar/2008:10:26:49 +0100] NSMMReplicationPlugin - agmt="cn=replica to backup" (backup:389): Replica has a different generation ID than the local data. [05/Mar/2008:10:32:00 +0100] NSMMReplicationPlugin - repl_set_mtn_referrals: could not set referrals for replica dc=fmintra,dc=hu: 32 [05/Mar/2008:10:32:00 +0100] NSMMReplicationPlugin - multimaster_be_state_change: replica dc=fmintra,dc=hu is going offline; disabling replication [05/Mar/2008:10:32:00 +0100] - WARNING: Import is running with nsslapd-db-private-import-mem on; No other process is allowed to access the database [05/Mar/2008:10:32:13 +0100] - import userRoot: Workers finished; cleaning up... [05/Mar/2008:10:32:13 +0100] - import userRoot: Workers cleaned up. [05/Mar/2008:10:32:13 +0100] - import userRoot: Indexing complete. Post-processing... [05/Mar/2008:10:32:13 +0100] - import userRoot: Flushing caches... [05/Mar/2008:10:32:13 +0100] - import userRoot: Closing files... [05/Mar/2008:10:32:14 +0100] - import userRoot: Import complete. Processed 12242 entries in 13 seconds. (941.69 entries/sec) [05/Mar/2008:10:32:14 +0100] NSMMReplicationPlugin - multimaster_be_state_change: replica dc=fmintra,dc=hu is coming online; enabling replication
memory usage by top:
top - 10:58:21 up 25 days, 22:36, 2 users, load average: 0.01, 0.13, 0.22 Tasks: 61 total, 2 running, 59 sleeping, 0 stopped, 0 zombie Cpu(s): 0.0%us, 0.0%sy, 0.0%ni,100.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 515192k total, 189600k used, 325592k free, 36472k buffers Swap: 489848k total, 18292k used, 471556k free, 106188k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 27647 fds 15 0 464m 47m 25m S 0.0 9.4 1:34.57 ns-slapd
top - 11:23:12 up 25 days, 23:01, 2 users, load average: 0.36, 0.27, 0.20 Tasks: 61 total, 2 running, 59 sleeping, 0 stopped, 0 zombie Cpu(s): 3.0%us, 0.0%sy, 0.0%ni, 96.0%id, 1.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 515192k total, 210700k used, 304492k free, 36488k buffers Swap: 489848k total, 18288k used, 471560k free, 117204k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 27647 fds 15 0 473m 59m 28m S 3.0 11.9 2:52.77 ns-slapd
top - 11:48:26 up 25 days, 23:26, 2 users, load average: 0.02, 0.08, 0.10 Tasks: 61 total, 1 running, 60 sleeping, 0 stopped, 0 zombie Cpu(s): 3.0%us, 0.0%sy, 0.0%ni, 97.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 515192k total, 222756k used, 292436k free, 36520k buffers Swap: 489848k total, 18288k used, 471560k free, 118932k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 27647 fds 15 0 483m 72m 30m S 0.0 14.4 4:12.04 ns-slapd
top - 13:31:42 up 26 days, 1:09, 2 users, load average: 0.28, 0.17, 0.15 Tasks: 61 total, 2 running, 59 sleeping, 0 stopped, 0 zombie Cpu(s): 1.1%us, 0.0%sy, 0.0%ni, 98.9%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 515192k total, 285572k used, 229620k free, 36540k buffers Swap: 489848k total, 18288k used, 471560k free, 140412k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 27647 fds 15 0 523m 116m 34m S 0.0 23.3 9:35.65 ns-slapd
Can you post your dse.ldif to pastebin.com? Be sure to omit or obscure any sensitive data first. I'd like to see what all of your cache settings are. Normally the server will increase in memory usage until the caches are full, then memory usage should level off. The speed at which this occurs depends on usage.
i forget a thing. i use some custom schema (ldapdns, ibm... etc.) if this is changed anything. (but i think this is not relevant info)
When the kernel kills your server, how much memory is it using? Is there anything in the server error log at around the time the kernel kills it?
i'm not sure, but at the time use the maximum as possible (512ram + 512 swap available) i think around 940mb, the kernel first kill some other processes, like mc, and after these the ns-slapd. I can't see anything in the log file, just the server start.
Finally, if you are convinced that there is a real memory leak in the server, would it be possible for you to run it under valgrind? Just running it under valgrind for 30 minutes or so should reveal any memory leaks in normal usage.
I can't understand this output, I never used valgrind before. I hope used the right options for valgrind.
can you tell me what mean the valgrind's output?
thanks,
KEeF
Tamas Bagyal wrote:
Tamas Bagyal wrote:
Rich Megginson wrote:
Tamas Bagyal wrote:
Rich Megginson wrote:
Bagyal Tamas wrote:
Rich Megginson wrote: > Tamas Bagyal wrote: >> hello Ryan, >> >> you tried this version? i have two fedora-ds 1.0.4 in mmr >> configuration. i migrate one of those to 1.1 (builded by your >> and Rich's instrutctions). but i have a problem with memory >> usage of ns-slapd process. initially mem usage is 18.5% but >> after 2 hours this changed to 23.1% and growed until killed by >> kernel. (i think...) >> >> mostly read transactions happen (dns) with a few write (cups). >> this is a debian etch, mem size is 512 mbyte (i know this is >> too low, but this is a test environment). cache size of slapd >> is 67108864. > Are you using SSL? Anything interesting in your server error log?
I running the setupssl2.sh but not use any ssl connection. error log shows nothing, only the server start.
The reason I ask is that older versions of the NSS crypto/SSL libraries had a memory leak. NSS 3.11.7 does not have this problem. But you would only see the problem if you were using SSL connections.
ok. I tried again from begining. fresh install, no ssl, no migration, used the setup-ds-admi.pl and setup the mmr with a fedora-ds 1.0.4. but nothing changed, memory usage growing... All setting is default except the mmr/changelog and access.log is off.
errors:
Fedora-Directory/1.1.0 B2008.059.1017 tower.fmintra.hu:389 (/opt/dirsrv/etc/dirsrv/slapd-tower)
[05/Mar/2008:10:19:20 +0100] - dblayer_instance_start: pagesize: 4096, pages: 128798, procpages: 5983 [05/Mar/2008:10:19:20 +0100] - cache autosizing: import cache: 204800k [05/Mar/2008:10:19:21 +0100] - li_import_cache_autosize: 50, import_pages: 51200, pagesize: 4096 [05/Mar/2008:10:19:21 +0100] - WARNING: Import is running with nsslapd-db-private-import-mem on; No other process is allowed to access the database [05/Mar/2008:10:19:21 +0100] - dblayer_instance_start: pagesize: 4096, pages: 128798, procpages: 5983 [05/Mar/2008:10:19:21 +0100] - cache autosizing: import cache: 204800k [05/Mar/2008:10:19:21 +0100] - li_import_cache_autosize: 50, import_pages: 51200, pagesize: 4096 [05/Mar/2008:10:19:21 +0100] - import userRoot: Beginning import job... [05/Mar/2008:10:19:21 +0100] - import userRoot: Index buffering enabled with bucket size 100 [05/Mar/2008:10:19:21 +0100] - import userRoot: Processing file "/tmp/ldifZHth0D.ldif" [05/Mar/2008:10:19:21 +0100] - import userRoot: Finished scanning file "/tmp/ldifZHth0D.ldif" (9 entries) [05/Mar/2008:10:19:21 +0100] - import userRoot: Workers finished; cleaning up... [05/Mar/2008:10:19:21 +0100] - import userRoot: Workers cleaned up. [05/Mar/2008:10:19:21 +0100] - import userRoot: Cleaning up producer thread... [05/Mar/2008:10:19:21 +0100] - import userRoot: Indexing complete. Post-processing... [05/Mar/2008:10:19:21 +0100] - import userRoot: Flushing caches... [05/Mar/2008:10:19:21 +0100] - import userRoot: Closing files... [05/Mar/2008:10:19:21 +0100] - All database threads now stopped [05/Mar/2008:10:19:21 +0100] - import userRoot: Import complete. Processed 9 entries in 0 seconds. (inf entries/sec) [05/Mar/2008:10:19:22 +0100] - Fedora-Directory/1.1.0 B2008.059.1017 starting up [05/Mar/2008:10:19:22 +0100] - I'm resizing my cache now...cache was 209715200 and is now 8000000 [05/Mar/2008:10:19:22 +0100] - slapd started. Listening on All Interfaces port 389 for LDAP requests [05/Mar/2008:10:22:23 +0100] NSMMReplicationPlugin - changelog program - cl5Open: failed to open changelog [05/Mar/2008:10:22:24 +0100] NSMMReplicationPlugin - changelog program - changelog5_config_add: failed to start changelog [05/Mar/2008:10:26:49 +0100] NSMMReplicationPlugin - agmt="cn=replica to backup" (backup:389): Replica has a different generation ID than the local data. [05/Mar/2008:10:32:00 +0100] NSMMReplicationPlugin - repl_set_mtn_referrals: could not set referrals for replica dc=fmintra,dc=hu: 32 [05/Mar/2008:10:32:00 +0100] NSMMReplicationPlugin - multimaster_be_state_change: replica dc=fmintra,dc=hu is going offline; disabling replication [05/Mar/2008:10:32:00 +0100] - WARNING: Import is running with nsslapd-db-private-import-mem on; No other process is allowed to access the database [05/Mar/2008:10:32:13 +0100] - import userRoot: Workers finished; cleaning up... [05/Mar/2008:10:32:13 +0100] - import userRoot: Workers cleaned up. [05/Mar/2008:10:32:13 +0100] - import userRoot: Indexing complete. Post-processing... [05/Mar/2008:10:32:13 +0100] - import userRoot: Flushing caches... [05/Mar/2008:10:32:13 +0100] - import userRoot: Closing files... [05/Mar/2008:10:32:14 +0100] - import userRoot: Import complete. Processed 12242 entries in 13 seconds. (941.69 entries/sec) [05/Mar/2008:10:32:14 +0100] NSMMReplicationPlugin - multimaster_be_state_change: replica dc=fmintra,dc=hu is coming online; enabling replication
memory usage by top:
top - 10:58:21 up 25 days, 22:36, 2 users, load average: 0.01, 0.13, 0.22 Tasks: 61 total, 2 running, 59 sleeping, 0 stopped, 0 zombie Cpu(s): 0.0%us, 0.0%sy, 0.0%ni,100.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 515192k total, 189600k used, 325592k free, 36472k buffers Swap: 489848k total, 18292k used, 471556k free, 106188k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 27647 fds 15 0 464m 47m 25m S 0.0 9.4 1:34.57 ns-slapd
top - 11:23:12 up 25 days, 23:01, 2 users, load average: 0.36, 0.27, 0.20 Tasks: 61 total, 2 running, 59 sleeping, 0 stopped, 0 zombie Cpu(s): 3.0%us, 0.0%sy, 0.0%ni, 96.0%id, 1.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 515192k total, 210700k used, 304492k free, 36488k buffers Swap: 489848k total, 18288k used, 471560k free, 117204k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 27647 fds 15 0 473m 59m 28m S 3.0 11.9 2:52.77 ns-slapd
top - 11:48:26 up 25 days, 23:26, 2 users, load average: 0.02, 0.08, 0.10 Tasks: 61 total, 1 running, 60 sleeping, 0 stopped, 0 zombie Cpu(s): 3.0%us, 0.0%sy, 0.0%ni, 97.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 515192k total, 222756k used, 292436k free, 36520k buffers Swap: 489848k total, 18288k used, 471560k free, 118932k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 27647 fds 15 0 483m 72m 30m S 0.0 14.4 4:12.04 ns-slapd
top - 13:31:42 up 26 days, 1:09, 2 users, load average: 0.28, 0.17, 0.15 Tasks: 61 total, 2 running, 59 sleeping, 0 stopped, 0 zombie Cpu(s): 1.1%us, 0.0%sy, 0.0%ni, 98.9%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 515192k total, 285572k used, 229620k free, 36540k buffers Swap: 489848k total, 18288k used, 471560k free, 140412k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 27647 fds 15 0 523m 116m 34m S 0.0 23.3 9:35.65 ns-slapd
Can you post your dse.ldif to pastebin.com? Be sure to omit or obscure any sensitive data first. I'd like to see what all of your cache settings are. Normally the server will increase in memory usage until the caches are full, then memory usage should level off. The speed at which this occurs depends on usage.
i forget a thing. i use some custom schema (ldapdns, ibm... etc.) if this is changed anything. (but i think this is not relevant info)
When the kernel kills your server, how much memory is it using? Is there anything in the server error log at around the time the kernel kills it?
i'm not sure, but at the time use the maximum as possible (512ram + 512 swap available) i think around 940mb, the kernel first kill some other processes, like mc, and after these the ns-slapd. I can't see anything in the log file, just the server start.
Finally, if you are convinced that there is a real memory leak in the server, would it be possible for you to run it under valgrind? Just running it under valgrind for 30 minutes or so should reveal any memory leaks in normal usage.
I can't understand this output, I never used valgrind before. I hope used the right options for valgrind.
can you tell me what mean the valgrind's output?
I'm not sure. The output is truncated, and valgrind is producing a lot of spurious errors, or at least errors not in directory server code. I guess pastebin is not going to like a several hundred thousand byte output file - is there somewhere else you can post the entire output?
thanks,
KEeF
-- Fedora-directory-users mailing list Fedora-directory-users@redhat.com https://www.redhat.com/mailman/listinfo/fedora-directory-users
Rich Megginson wrote:
Tamas Bagyal wrote:
Tamas Bagyal wrote:
Rich Megginson wrote:
Tamas Bagyal wrote:
Rich Megginson wrote:
Bagyal Tamas wrote: > Rich Megginson wrote: >> Tamas Bagyal wrote: >>> hello Ryan, >>> >>> you tried this version? i have two fedora-ds 1.0.4 in mmr >>> configuration. i migrate one of those to 1.1 (builded by your >>> and Rich's instrutctions). but i have a problem with memory >>> usage of ns-slapd process. initially mem usage is 18.5% but >>> after 2 hours this changed to 23.1% and growed until killed by >>> kernel. (i think...) >>> >>> mostly read transactions happen (dns) with a few write (cups). >>> this is a debian etch, mem size is 512 mbyte (i know this is >>> too low, but this is a test environment). cache size of slapd >>> is 67108864. >> Are you using SSL? Anything interesting in your server error log? > > I running the setupssl2.sh but not use any ssl connection. error > log shows nothing, only the server start. The reason I ask is that older versions of the NSS crypto/SSL libraries had a memory leak. NSS 3.11.7 does not have this problem. But you would only see the problem if you were using SSL connections.
ok. I tried again from begining. fresh install, no ssl, no migration, used the setup-ds-admi.pl and setup the mmr with a fedora-ds 1.0.4. but nothing changed, memory usage growing... All setting is default except the mmr/changelog and access.log is off.
errors:
Fedora-Directory/1.1.0 B2008.059.1017 tower.fmintra.hu:389 (/opt/dirsrv/etc/dirsrv/slapd-tower)
[05/Mar/2008:10:19:20 +0100] - dblayer_instance_start: pagesize: 4096, pages: 128798, procpages: 5983 [05/Mar/2008:10:19:20 +0100] - cache autosizing: import cache: 204800k [05/Mar/2008:10:19:21 +0100] - li_import_cache_autosize: 50, import_pages: 51200, pagesize: 4096 [05/Mar/2008:10:19:21 +0100] - WARNING: Import is running with nsslapd-db-private-import-mem on; No other process is allowed to access the database [05/Mar/2008:10:19:21 +0100] - dblayer_instance_start: pagesize: 4096, pages: 128798, procpages: 5983 [05/Mar/2008:10:19:21 +0100] - cache autosizing: import cache: 204800k [05/Mar/2008:10:19:21 +0100] - li_import_cache_autosize: 50, import_pages: 51200, pagesize: 4096 [05/Mar/2008:10:19:21 +0100] - import userRoot: Beginning import job... [05/Mar/2008:10:19:21 +0100] - import userRoot: Index buffering enabled with bucket size 100 [05/Mar/2008:10:19:21 +0100] - import userRoot: Processing file "/tmp/ldifZHth0D.ldif" [05/Mar/2008:10:19:21 +0100] - import userRoot: Finished scanning file "/tmp/ldifZHth0D.ldif" (9 entries) [05/Mar/2008:10:19:21 +0100] - import userRoot: Workers finished; cleaning up... [05/Mar/2008:10:19:21 +0100] - import userRoot: Workers cleaned up. [05/Mar/2008:10:19:21 +0100] - import userRoot: Cleaning up producer thread... [05/Mar/2008:10:19:21 +0100] - import userRoot: Indexing complete. Post-processing... [05/Mar/2008:10:19:21 +0100] - import userRoot: Flushing caches... [05/Mar/2008:10:19:21 +0100] - import userRoot: Closing files... [05/Mar/2008:10:19:21 +0100] - All database threads now stopped [05/Mar/2008:10:19:21 +0100] - import userRoot: Import complete. Processed 9 entries in 0 seconds. (inf entries/sec) [05/Mar/2008:10:19:22 +0100] - Fedora-Directory/1.1.0 B2008.059.1017 starting up [05/Mar/2008:10:19:22 +0100] - I'm resizing my cache now...cache was 209715200 and is now 8000000 [05/Mar/2008:10:19:22 +0100] - slapd started. Listening on All Interfaces port 389 for LDAP requests [05/Mar/2008:10:22:23 +0100] NSMMReplicationPlugin - changelog program - cl5Open: failed to open changelog [05/Mar/2008:10:22:24 +0100] NSMMReplicationPlugin - changelog program - changelog5_config_add: failed to start changelog [05/Mar/2008:10:26:49 +0100] NSMMReplicationPlugin - agmt="cn=replica to backup" (backup:389): Replica has a different generation ID than the local data. [05/Mar/2008:10:32:00 +0100] NSMMReplicationPlugin - repl_set_mtn_referrals: could not set referrals for replica dc=fmintra,dc=hu: 32 [05/Mar/2008:10:32:00 +0100] NSMMReplicationPlugin - multimaster_be_state_change: replica dc=fmintra,dc=hu is going offline; disabling replication [05/Mar/2008:10:32:00 +0100] - WARNING: Import is running with nsslapd-db-private-import-mem on; No other process is allowed to access the database [05/Mar/2008:10:32:13 +0100] - import userRoot: Workers finished; cleaning up... [05/Mar/2008:10:32:13 +0100] - import userRoot: Workers cleaned up. [05/Mar/2008:10:32:13 +0100] - import userRoot: Indexing complete. Post-processing... [05/Mar/2008:10:32:13 +0100] - import userRoot: Flushing caches... [05/Mar/2008:10:32:13 +0100] - import userRoot: Closing files... [05/Mar/2008:10:32:14 +0100] - import userRoot: Import complete. Processed 12242 entries in 13 seconds. (941.69 entries/sec) [05/Mar/2008:10:32:14 +0100] NSMMReplicationPlugin - multimaster_be_state_change: replica dc=fmintra,dc=hu is coming online; enabling replication
memory usage by top:
top - 10:58:21 up 25 days, 22:36, 2 users, load average: 0.01, 0.13, 0.22 Tasks: 61 total, 2 running, 59 sleeping, 0 stopped, 0 zombie Cpu(s): 0.0%us, 0.0%sy, 0.0%ni,100.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 515192k total, 189600k used, 325592k free, 36472k buffers Swap: 489848k total, 18292k used, 471556k free, 106188k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 27647 fds 15 0 464m 47m 25m S 0.0 9.4 1:34.57 ns-slapd
top - 11:23:12 up 25 days, 23:01, 2 users, load average: 0.36, 0.27, 0.20 Tasks: 61 total, 2 running, 59 sleeping, 0 stopped, 0 zombie Cpu(s): 3.0%us, 0.0%sy, 0.0%ni, 96.0%id, 1.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 515192k total, 210700k used, 304492k free, 36488k buffers Swap: 489848k total, 18288k used, 471560k free, 117204k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 27647 fds 15 0 473m 59m 28m S 3.0 11.9 2:52.77 ns-slapd
top - 11:48:26 up 25 days, 23:26, 2 users, load average: 0.02, 0.08, 0.10 Tasks: 61 total, 1 running, 60 sleeping, 0 stopped, 0 zombie Cpu(s): 3.0%us, 0.0%sy, 0.0%ni, 97.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 515192k total, 222756k used, 292436k free, 36520k buffers Swap: 489848k total, 18288k used, 471560k free, 118932k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 27647 fds 15 0 483m 72m 30m S 0.0 14.4 4:12.04 ns-slapd
top - 13:31:42 up 26 days, 1:09, 2 users, load average: 0.28, 0.17, 0.15 Tasks: 61 total, 2 running, 59 sleeping, 0 stopped, 0 zombie Cpu(s): 1.1%us, 0.0%sy, 0.0%ni, 98.9%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 515192k total, 285572k used, 229620k free, 36540k buffers Swap: 489848k total, 18288k used, 471560k free, 140412k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 27647 fds 15 0 523m 116m 34m S 0.0 23.3 9:35.65 ns-slapd
Can you post your dse.ldif to pastebin.com? Be sure to omit or obscure any sensitive data first. I'd like to see what all of your cache settings are. Normally the server will increase in memory usage until the caches are full, then memory usage should level off. The speed at which this occurs depends on usage.
i forget a thing. i use some custom schema (ldapdns, ibm... etc.) if this is changed anything. (but i think this is not relevant info)
When the kernel kills your server, how much memory is it using? Is there anything in the server error log at around the time the kernel kills it?
i'm not sure, but at the time use the maximum as possible (512ram + 512 swap available) i think around 940mb, the kernel first kill some other processes, like mc, and after these the ns-slapd. I can't see anything in the log file, just the server start.
Finally, if you are convinced that there is a real memory leak in the server, would it be possible for you to run it under valgrind? Just running it under valgrind for 30 minutes or so should reveal any memory leaks in normal usage.
I can't understand this output, I never used valgrind before. I hope used the right options for valgrind.
can you tell me what mean the valgrind's output?
I'm not sure. The output is truncated, and valgrind is producing a lot of spurious errors, or at least errors not in directory server code. I guess pastebin is not going to like a several hundred thousand byte output file - is there somewhere else you can post the entire output?
sorry, i not verified after the paste. but i hope you access the output here: http://keef.uw.hu/valgrind-fds-test.28385
KeeF
Tamas Bagyal wrote:
Rich Megginson wrote:
<snip>
I'm not sure. The output is truncated, and valgrind is producing a lot of spurious errors, or at least errors not in directory server code. I guess pastebin is not going to like a several hundred thousand byte output file - is there somewhere else you can post the entire output?
sorry, i not verified after the paste. but i hope you access the output here: http://keef.uw.hu/valgrind-fds-test.28385
Yes. That's very useful. Looks like class of service is leaking. Are you using Class of Service, or some feature which uses it, like per subtree/per user password policy, or account inactivation?
KeeF
-- Fedora-directory-users mailing list Fedora-directory-users@redhat.com https://www.redhat.com/mailman/listinfo/fedora-directory-users
Rich Megginson wrote:
Tamas Bagyal wrote:
hello Ryan,
you tried this version? i have two fedora-ds 1.0.4 in mmr configuration. i migrate one of those to 1.1 (builded by your and Rich's instrutctions). but i have a problem with memory usage of ns-slapd process. initially mem usage is 18.5% but after 2 hours this changed to 23.1% and growed until killed by kernel. (i think...)
mostly read transactions happen (dns) with a few write (cups). this is a debian etch, mem size is 512 mbyte (i know this is too low, but this is a test environment). cache size of slapd is 67108864.
Are you using SSL? Anything interesting in your server error log?
I runn the setupssl2.sh but not use any ssl connection. error log shows nothing, only the server start.
can you give any help?
thanks,
KeeF
Ryan Braun wrote:
A couple little bugs creeped up during the build. I think it was during the make install of ldapserver. One of the binaries (the first one I guess) was copied to /opt/dirsrv/bin (the bin being a file not a directory) so the /opt/dirsrv/bin directory isn't getting created. Quick fix was just renaming /opt/dirsrv/bin to /opt/dirsrv/bin.something and rerunning make. Executing /opt/dirsrv/bin.something looks like the binary might be ldappasswd?
Probably a bug in ds/mozldap/Makefile in the install section.
I had a peek in there, it looks ok, but I'll add a mkdir -p /opt/dirsrv/bin before the copy loop and see if that works next time I build.
Second, there seems to be a missing library.
Starting admin server . . . output: ERROR: ld.so: object '/opt/dirsrv/lib/libssl3.so' from LD_PRELOAD cannot be preloaded: ignored. output: apache2: Syntax error on line 123 of /opt/dirsrv/etc/dirsrv/admin-serv/httpd.conf: module log_config_module is built-in and can't be loaded Could not start the admin server. Error: 256 Failed to create and configure the admin server Exiting . . .
I assumed the libssl3.so was supposed to be provided by building nss from source. So I just symlinked the system's libssl3.so provided by libnss3-0d back to /opt/dirsrv/lib/.
Ok. Or just edit the start-ds-admin script. Looks like a bug - it should use the correct path to libssl3.so. But then the NSS devel support in etch is not quite there.
Gotcha
Which leads me to my next question. The java components, are they only required for running the console on your client machines? So building with NOJAVA=1 will provide a fully working adminserver and ldapserver, just no console binaries?
Mostly correct. The only thing is that the way the console works, it downloads the ds and ds-admin jar files from the admin server. However, if you build them on the client machine and install them into $HOME/.fedora-idm-console/jars then the console will just use the local ones.
Ok, well I tried installing the windows console on one of the windows boxes around here (easier then downloading fc isos :) ), fired up the console and am able to connect and it looks like it wants to work, then it reports back that it can't find the jars. So that being said, is there an easy way to use FC jars, or do I need to build them for debian? (I have started trying to build jss but am having some issues)
To be honest, I haven't really looked into the different post install process' with 1.1.0 since 1.0.4 so the reason I could have missing entries in the console could very well be my own fault :)
Also, if I want to fine tune the location of some of directories during build. is it safe to modify the CONFIGURE_ARGS variable in the adminserver and ldapserver's Makefile? I want to put /opt/dirsrv/etc/dirsrv into /etc/dirsrv aswell as /opt/dirsrv/var into /var?
Yes, for those components whose configure respect --sysconfdir and --localstatedir - which means not the mozilla components (mozldap, etc.) but everything else should work just fine. You'll also have to tweak the --prefix argument which is set by default.
I'll play around with some options. I've started a wiki page for the debian build. I don't have it linked onto the main page, but you can check it out in recent changes.
Ryan
-- Fedora-directory-users mailing list Fedora-directory-users@redhat.com https://www.redhat.com/mailman/listinfo/fedora-directory-users
-- Fedora-directory-users mailing list Fedora-directory-users@redhat.com https://www.redhat.com/mailman/listinfo/fedora-directory-users
-- Fedora-directory-users mailing list Fedora-directory-users@redhat.com https://www.redhat.com/mailman/listinfo/fedora-directory-users
On Monday 03 March 2008 5:26 pm, Tamas Bagyal wrote:
To be honest, I haven't done much operationally with the packages after building them. The extent of my testing was pretty much install, fire up admin and slap services and connect with the console and create a couple entries. But now that you mention it, I was wondering about ldap benchmarking suites and will pop a note off to the list to see what everyone uses.
I'm still running 1.0.4 derived from an alien'd rpm on our boxes currently. I still have some packaging work to do on my 1.1.0 binaries before I move our packages to our stable repo.
Ryan
hello Ryan,
you tried this version? i have two fedora-ds 1.0.4 in mmr configuration. i migrate one of those to 1.1 (builded by your and Rich's instrutctions). but i have a problem with memory usage of ns-slapd process. initially mem usage is 18.5% but after 2 hours this changed to 23.1% and growed until killed by kernel. (i think...)
mostly read transactions happen (dns) with a few write (cups). this is a debian etch, mem size is 512 mbyte (i know this is too low, but this is a test environment). cache size of slapd is 67108864.
can you give any help?
thanks,
KeeF
Ryan Braun wrote:
A couple little bugs creeped up during the build. I think it was during the make install of ldapserver. One of the binaries (the first one I guess) was copied to /opt/dirsrv/bin (the bin being a file not a directory) so the /opt/dirsrv/bin directory isn't getting created. Quick fix was just renaming /opt/dirsrv/bin to /opt/dirsrv/bin.something and rerunning make. Executing /opt/dirsrv/bin.something looks like the binary might be ldappasswd?
Probably a bug in ds/mozldap/Makefile in the install section.
I had a peek in there, it looks ok, but I'll add a mkdir -p /opt/dirsrv/bin before the copy loop and see if that works next time I build.
Second, there seems to be a missing library.
Starting admin server . . . output: ERROR: ld.so: object '/opt/dirsrv/lib/libssl3.so' from LD_PRELOAD cannot be preloaded: ignored. output: apache2: Syntax error on line 123 of /opt/dirsrv/etc/dirsrv/admin-serv/httpd.conf: module log_config_module is built-in and can't be loaded Could not start the admin server. Error: 256 Failed to create and configure the admin server Exiting . . .
I assumed the libssl3.so was supposed to be provided by building nss from source. So I just symlinked the system's libssl3.so provided by libnss3-0d back to /opt/dirsrv/lib/.
Ok. Or just edit the start-ds-admin script. Looks like a bug - it should use the correct path to libssl3.so. But then the NSS devel support in etch is not quite there.
Gotcha
Which leads me to my next question. The java components, are they only required for running the console on your client machines? So building with NOJAVA=1 will provide a fully working adminserver and ldapserver, just no console binaries?
Mostly correct. The only thing is that the way the console works, it downloads the ds and ds-admin jar files from the admin server. However, if you build them on the client machine and install them into $HOME/.fedora-idm-console/jars then the console will just use the local ones.
Ok, well I tried installing the windows console on one of the windows boxes around here (easier then downloading fc isos :) ), fired up the console and am able to connect and it looks like it wants to work, then it reports back that it can't find the jars. So that being said, is there an easy way to use FC jars, or do I need to build them for debian? (I have started trying to build jss but am having some issues)
To be honest, I haven't really looked into the different post install process' with 1.1.0 since 1.0.4 so the reason I could have missing entries in the console could very well be my own fault :)
Also, if I want to fine tune the location of some of directories during build. is it safe to modify the CONFIGURE_ARGS variable in the adminserver and ldapserver's Makefile? I want to put /opt/dirsrv/etc/dirsrv into /etc/dirsrv aswell as /opt/dirsrv/var into /var?
Yes, for those components whose configure respect --sysconfdir and --localstatedir - which means not the mozilla components (mozldap, etc.) but everything else should work just fine. You'll also have to tweak the --prefix argument which is set by default.
I'll play around with some options. I've started a wiki page for the debian build. I don't have it linked onto the main page, but you can check it out in recent changes.
Ryan
-- Fedora-directory-users mailing list Fedora-directory-users@redhat.com https://www.redhat.com/mailman/listinfo/fedora-directory-users
-- Fedora-directory-users mailing list Fedora-directory-users@redhat.com https://www.redhat.com/mailman/listinfo/fedora-directory-users
389-users@lists.fedoraproject.org