Ryan Braun [ADS]
2009-Apr-14 19:15 UTC
[Fedora-directory-users] Trouble starting 1.2.0 on debian lenny.
I just got finished building some lenny packages for fds 1.2.0 and I am having some issues getting the DS running properly. Using my buildscripts (which create a working 1.2.0 and 1.1.3 for etch, incrementing lenny package names as required), the build works, but when I try to create an instance, I get an error about Netscape Portable Runtime failing to load a library. lenny:/opt/dirsrv/sbin# ./setup-ds.pl =============================================================================This program will set up the Fedora Directory Server. SNIP Directory Manager DN [cn=Directory Manager]: Password: Password (confirm): Could not import LDIF file ''/tmp/ldifUjjWfx.ldif''. Error: 256. Output: importing data ... [14/Apr/2009:12:58:17 -0400] - SSL alert: Security Initialization: NSS initialization failed (Netscape Portable Runtime error -5977 - Failure to load dynamic library.): certdir: /etc/dirsrv/slapd-lenny [14/Apr/2009:12:58:17 -0400] - ERROR: NSS Initialization Failed. Error: Could not create directory server instance ''lenny''. Exiting . . . Log file is ''/tmp/setupuyjm1M.log'' I first noticed an issue when building mozldap, this came up gcc -shared -Wl,-soname -Wl,libssldap60.so -o libssldap60.so ./clientinit.o ./ldapsinit.o ./errormap.o -L../../../../../dist/lib -lldap60 -lprldap60 -L/usr/lib/ -lssl3 -lnss3 -lsoftokn3 -L/usr/lib/ -lplc4 -lplds4 - lnspr4 /usr/bin/ld: cannot find -lsoftokn3 Which led my to find out lenny libnss3-1d has libsofttokn3.so in /usr/lib/nss and not /usr/lib. So I added a symlink to /usr/lib. After that mozldap and everything built ok. But now I''m wondering if I need some kind of special -- with-nss-lib statements in my ./configure''s. lenny:~/fdsbuildscripts/mozldap# dpkg -L libnss3-1d /usr /usr/lib /usr/lib/nss /usr/lib/nss/libfreebl3.so /usr/lib/nss/libsoftokn3.so /usr/lib/nss/libnssdbm3.so /usr/lib/nss/libnssckbi.so /usr/lib/nss/libsoftokn3.chk /usr/lib/nss/libfreebl3.chk /usr/lib/libnss3.so.1d /usr/lib/libnssutil3.so.1d /usr/lib/libsmime3.so.1d /usr/lib/libssl3.so.1d /usr/share /usr/share/doc /usr/share/doc/libnss3-1d /usr/share/doc/libnss3-1d/copyright /usr/share/doc/libnss3-1d/changelog.Debian.gz /usr/lib/libssl3.so /usr/lib/libsmime3.so /usr/lib/libnssutil3.so /usr/lib/libnss3.so vs etch /usr /usr/share /usr/share/doc /usr/share/doc/libnss3-0d /usr/share/doc/libnss3-0d/copyright /usr/share/doc/libnss3-0d/changelog.Debian.gz /usr/share/doc/libnss3-0d/MPL.gz /usr/lib /usr/lib/libnss3.so.0d /usr/lib/libsmime3.so.0d /usr/lib/libsoftokn3.so.0d /usr/lib/libssl3.so.0d /usr/lib/xulrunner /usr/lib/xulrunner/libfreebl3.so /usr/lib/xulrunner/libnssckbi.so /usr/lib/xulrunner/libfreebl3.chk /usr/lib/libsoftokn3.0d.chk Here are my ./configure options when building mozldap and fedora-ds-base mozldap ./configure --prefix=/ \ --libdir=/usr/lib/ \ --includedir=/usr/include/mozldap \ --oldincludedir=/usr/include/mozldap \ --sysconfdir=/usr/share/mozldap/etc/ \ --bindir=/usr/lib/mozldap/ \ --enable-clu \ --with-nss-inc=/usr/include/nss/ \ --with-nss-lib=/usr/lib/ \ --with-nspr-inc=/usr/include/nspr/ \ --with-nspr-lib=/usr/lib/ \ --with-svrcore-inc=/usr/include \ --with-svrcore-lib=/usr/lib \ --with-sasl fedora-ds-base CPPFLAGS=-DNETSNMP_USE_INLINE=1 ./configure \ --prefix=/opt/dirsrv \ --enable-bundle \ --localstatedir=/var \ --sysconfdir=/etc \ --datadir=/usr/share \ --with-svrcore-inc=/usr/include \ --with-svrcore-lib=/usr/lib \ --with-ldapsdk-inc=/usr/include/mozldap/ \ --with-ldapsdk-lib=/usr/lib/ \ --with-ldapsdk-bin=/usr/lib/mozldap \ --with-nss-inc=/usr/include/nss/ \ --with-nss-lib=/usr/lib/ \ --with-nspr-inc=/usr/include/nspr/ \ --with-nspr-lib=/usr/lib/ \ --with-icu-inc=/usr/include/unicode \ --with-icu-lib=/usr/lib \ --with-icu-bin=/usr/bin \ --with-sasl \ --with-net-snmp \ --with-kerberos Thanks Ryan
Rob Crittenden
2009-Apr-14 19:41 UTC
Re: [Fedora-directory-users] Trouble starting 1.2.0 on debian lenny.
Ryan Braun [ADS] wrote:> I just got finished building some lenny packages for fds 1.2.0 and I am having > some issues getting the DS running properly. Using my buildscripts (which > create a working 1.2.0 and 1.1.3 for etch, incrementing lenny package names > as required), the build works, but when I try to create an instance, I get > an error about Netscape Portable Runtime failing to load a library. > > lenny:/opt/dirsrv/sbin# ./setup-ds.pl > > =============================================================================> This program will set up the Fedora Directory Server. > SNIP > Directory Manager DN [cn=Directory Manager]: > Password: > Password (confirm): > Could not import LDIF file ''/tmp/ldifUjjWfx.ldif''. Error: 256. Output: > importing data ... > [14/Apr/2009:12:58:17 -0400] - SSL alert: Security Initialization: NSS > initialization failed (Netscape Portable Runtime error -5977 - Failure to load > dynamic library.): certdir: /etc/dirsrv/slapd-lenny > [14/Apr/2009:12:58:17 -0400] - ERROR: NSS Initialization Failed. > > Error: Could not create directory server instance ''lenny''. > Exiting . . . > Log file is ''/tmp/setupuyjm1M.log'' > > I first noticed an issue when building mozldap, this came up > > gcc -shared -Wl,-soname -Wl,libssldap60.so -o libssldap60.so > ./clientinit.o ./ldapsinit.o ./errormap.o -L../../../../../dist/lib -lldap60 > -lprldap60 -L/usr/lib/ -lssl3 -lnss3 -lsoftokn3 -L/usr/lib/ -lplc4 -lplds4 - > lnspr4 > /usr/bin/ld: cannot find -lsoftokn3You shouldn''t need to link this in at all. http://www.mozilla.org/projects/security/pki/nss/nss-3.4/nss-3.4-release-notes.html rob
Ryan Braun [ADS]
2009-Apr-15 16:32 UTC
Re: [Fedora-directory-users] Trouble starting 1.2.0 on debian lenny.
On Tuesday 14 April 2009 19:41:26 Rob Crittenden wrote:> > gcc -shared -Wl,-soname -Wl,libssldap60.so -o libssldap60.so > > ./clientinit.o ./ldapsinit.o ./errormap.o -L../../../../../dist/lib > > -lldap60 -lprldap60 -L/usr/lib/ -lssl3 -lnss3 -lsoftokn3 -L/usr/lib/ > > -lplc4 -lplds4 - lnspr4 > > /usr/bin/ld: cannot find -lsoftokn3 > > You shouldn''t need to link this in at all. > > http://www.mozilla.org/projects/security/pki/nss/nss-3.4/nss-3.4-release-no >tes.html >I''ve tried adding a CC=/usr/bin/gcc-4.1 -Wl, ''-rpath=/usr/lib/nss'' and the configure bailed here checking whether we are using GNU C++... yes checking whether c++ accepts -g... yes checking for gcc... /usr/bin/gcc-4.1 -Wl, -rpath-link=/usr/lib/nss checking whether the C compiler (/usr/bin/gcc-4.1 -Wl, -rpath-link=/usr/lib/nss ) works... no configure: error: installation or configuration problem: C compiler cannot create executables. Also tried adding a CC=/usr/bin/gcc-4.1 -Wl, -Xlinker -rpath-link -Xlinker /usr/lib/nss, and that also failed. But it at least made it passed the check. gcc-4.1: -rpath-link: linker input file unused because linking not done gcc-4.1: /usr/lib/nss: linker input file unused because linking not done /usr/bin/gcc-4.1 -Xlinker -rpath-link -Xlinker /usr/lib/nss -o errormap.o -c -pipe -ansi -Wall -pthread -g -fno-inline -fPIC -DDEBUG_root -DDEBUG=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 -DFORCE_PR_LOG -D_PR_PTHREADS -UHAVE_CVAR_BUILT_ON_SEM -DUSE_WAITPID -DNEEDPROTOS -DLDAP_DEBUG -DNET_SSL -DNO_LIBLCACHE -DLDAP_REFERRALS -DNS_DOMESTIC -DLINUX2_0 -DLINUX1_2 -DLINUX2_1 -I../../../../../dist/public/ldap -I../../../ldap/include -I../../../../../dist/./include -I../../../../../dist/include -I/usr/include/nss/ -I/usr/include/nspr/ errormap.c gcc-4.1: -rpath-link: linker input file unused because linking not done gcc-4.1: /usr/lib/nss: linker input file unused because linking not done ======= making ./libssldap60.so /usr/bin/gcc-4.1 -Xlinker -rpath-link -Xlinker /usr/lib/nss -shared -Wl,-soname -Wl,libssldap60.so -o libssldap60.so ./clientinit.o ./ldapsinit.o ./errormap.o -L../../../../../dist/lib -lldap60 -lprldap60 -L/usr/lib/ -lssl3 -lnss3 -lsoftokn3 -L/usr/lib/ - lplc4 -lplds4 -lnspr4 /usr/bin/ld: cannot find -lsoftokn3 collect2: ld returned 1 exit status make[3]: *** [libssldap60.so] Error 1 make[3]: Leaving directory `/tmp/fdsbuildscripts/mozldap/mozldap-6.0.5/mozilla/directory/c-sdk/ldap/libraries/libssldap'' make[2]: *** [export] Error 2 make[2]: Leaving directory `/tmp/fdsbuildscripts/mozldap/mozldap-6.0.5/mozilla/directory/c-sdk/ldap/libraries'' make[1]: *** [export] Error 2 make[1]: Leaving directory `/tmp/fdsbuildscripts/mozldap/mozldap-6.0.5/mozilla/directory/c-sdk/ldap'' make: *** [export] Error 2 /usr/bin/install: cannot stat `/tmp/fdsbuildscripts/mozldap/mozldap-6.0.5/mozilla/dist/lib/libssldap60.so'': No such file or directory /usr/bin/install: cannot stat `/tmp/fdsbuildscripts/mozldap/mozldap-6.0.5/mozilla/dist/bin/ldapsearch'': No such file or directory /usr/bin/install: cannot stat `/tmp/fdsbuildscripts/mozldap/mozldap-6.0.5/mozilla/dist/bin/ldapmodify'': No such file or directory /usr/bin/install: cannot stat `/tmp/fdsbuildscripts/mozldap/mozldap-6.0.5/mozilla/dist/bin/ldapdelete'': No such file or directory /usr/bin/install: cannot stat `/tmp/fdsbuildscripts/mozldap/mozldap-6.0.5/mozilla/dist/bin/ldapcmp'': No such file or directory /usr/bin/install: cannot stat `/tmp/fdsbuildscripts/mozldap/mozldap-6.0.5/mozilla/dist/bin/ldapcompare'': No such file or directory /usr/bin/install: cannot stat `/tmp/fdsbuildscripts/mozldap/mozldap-6.0.5/mozilla/dist/bin/ldappasswd'': No such file or directory dpkg-deb: building package `mozldap'' in `/usr/src/debs/mozldap-lenny-6.0.5.deb''. dpkg-deb: building package `mozldap-dev'' in `/usr/src/debs/mozldap-dev-lenny-6.0.5.deb''. dpkg-deb: building package `mozldap-tools'' in `/usr/src/debs/mozldap-tools-lenny-6.0.5.deb''. Would I be safe to assume, the original error, [14/Apr/2009:12:58:17 -0400] - SSL alert: Security Initialization: NSS initialization failed (Netscape Portable Runtime error -5977 - Failure to load dynamic library.): certdir: /etc/dirsrv/slapd-lenny [14/Apr/2009:12:58:17 -0400] - ERROR: NSS Initialization Failed. Is a problem with mozldap not being linked properly? If so, how do I pass the proper options to ld? Ryan
Rich Megginson
2009-Apr-15 16:50 UTC
Re: [Fedora-directory-users] Trouble starting 1.2.0 on debian lenny.
Ryan Braun [ADS] wrote:> On Tuesday 14 April 2009 19:41:26 Rob Crittenden wrote: > >>> gcc -shared -Wl,-soname -Wl,libssldap60.so -o libssldap60.so >>> ./clientinit.o ./ldapsinit.o ./errormap.o -L../../../../../dist/lib >>> -lldap60 -lprldap60 -L/usr/lib/ -lssl3 -lnss3 -lsoftokn3 -L/usr/lib/ >>> -lplc4 -lplds4 - lnspr4 >>> /usr/bin/ld: cannot find -lsoftokn3 >>> >> You shouldn''t need to link this in at all. >> >> http://www.mozilla.org/projects/security/pki/nss/nss-3.4/nss-3.4-release-no >> tes.html >> >> > > I''ve tried adding a CC=/usr/bin/gcc-4.1 -Wl, ''-rpath=/usr/lib/nss'' and the configure bailed here > > checking whether we are using GNU C++... yes > checking whether c++ accepts -g... yes > checking for gcc... /usr/bin/gcc-4.1 -Wl, -rpath-link=/usr/lib/nss > checking whether the C compiler (/usr/bin/gcc-4.1 -Wl, -rpath-link=/usr/lib/nss ) works... no > configure: error: installation or configuration problem: C compiler cannot create executables. >What about using LDFLAGS="-L/usr/lib/nss" ? The real problem is that mozldap should not link directly against softokn3 anymore - please file a bug at bugzilla.mozilla.org against the LDAP C SDK component.> Also tried adding a CC=/usr/bin/gcc-4.1 -Wl, -Xlinker -rpath-link -Xlinker /usr/lib/nss, and that also failed. But it at least made it passed the check. > > gcc-4.1: -rpath-link: linker input file unused because linking not done > gcc-4.1: /usr/lib/nss: linker input file unused because linking not done > /usr/bin/gcc-4.1 -Xlinker -rpath-link -Xlinker /usr/lib/nss -o errormap.o -c -pipe -ansi -Wall -pthread -g -fno-inline -fPIC -DDEBUG_root -DDEBUG=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 -DFORCE_PR_LOG -D_PR_PTHREADS -UHAVE_CVAR_BUILT_ON_SEM -DUSE_WAITPID -DNEEDPROTOS -DLDAP_DEBUG -DNET_SSL -DNO_LIBLCACHE -DLDAP_REFERRALS -DNS_DOMESTIC -DLINUX2_0 > -DLINUX1_2 -DLINUX2_1 -I../../../../../dist/public/ldap -I../../../ldap/include -I../../../../../dist/./include -I../../../../../dist/include -I/usr/include/nss/ -I/usr/include/nspr/ errormap.c > gcc-4.1: -rpath-link: linker input file unused because linking not done > gcc-4.1: /usr/lib/nss: linker input file unused because linking not done > ======= making ./libssldap60.so > /usr/bin/gcc-4.1 -Xlinker -rpath-link -Xlinker /usr/lib/nss -shared -Wl,-soname -Wl,libssldap60.so -o libssldap60.so ./clientinit.o ./ldapsinit.o ./errormap.o -L../../../../../dist/lib -lldap60 -lprldap60 -L/usr/lib/ -lssl3 -lnss3 -lsoftokn3 -L/usr/lib/ - > lplc4 -lplds4 -lnspr4 > /usr/bin/ld: cannot find -lsoftokn3 > collect2: ld returned 1 exit status > make[3]: *** [libssldap60.so] Error 1 > make[3]: Leaving directory `/tmp/fdsbuildscripts/mozldap/mozldap-6.0.5/mozilla/directory/c-sdk/ldap/libraries/libssldap'' > make[2]: *** [export] Error 2 > make[2]: Leaving directory `/tmp/fdsbuildscripts/mozldap/mozldap-6.0.5/mozilla/directory/c-sdk/ldap/libraries'' > make[1]: *** [export] Error 2 > make[1]: Leaving directory `/tmp/fdsbuildscripts/mozldap/mozldap-6.0.5/mozilla/directory/c-sdk/ldap'' > make: *** [export] Error 2 > /usr/bin/install: cannot stat `/tmp/fdsbuildscripts/mozldap/mozldap-6.0.5/mozilla/dist/lib/libssldap60.so'': No such file or directory > /usr/bin/install: cannot stat `/tmp/fdsbuildscripts/mozldap/mozldap-6.0.5/mozilla/dist/bin/ldapsearch'': No such file or directory > /usr/bin/install: cannot stat `/tmp/fdsbuildscripts/mozldap/mozldap-6.0.5/mozilla/dist/bin/ldapmodify'': No such file or directory > /usr/bin/install: cannot stat `/tmp/fdsbuildscripts/mozldap/mozldap-6.0.5/mozilla/dist/bin/ldapdelete'': No such file or directory > /usr/bin/install: cannot stat `/tmp/fdsbuildscripts/mozldap/mozldap-6.0.5/mozilla/dist/bin/ldapcmp'': No such file or directory > /usr/bin/install: cannot stat `/tmp/fdsbuildscripts/mozldap/mozldap-6.0.5/mozilla/dist/bin/ldapcompare'': No such file or directory > /usr/bin/install: cannot stat `/tmp/fdsbuildscripts/mozldap/mozldap-6.0.5/mozilla/dist/bin/ldappasswd'': No such file or directory > dpkg-deb: building package `mozldap'' in `/usr/src/debs/mozldap-lenny-6.0.5.deb''. > dpkg-deb: building package `mozldap-dev'' in `/usr/src/debs/mozldap-dev-lenny-6.0.5.deb''. > dpkg-deb: building package `mozldap-tools'' in `/usr/src/debs/mozldap-tools-lenny-6.0.5.deb''. > > Would I be safe to assume, the original error, > > [14/Apr/2009:12:58:17 -0400] - SSL alert: Security Initialization: NSS > initialization failed (Netscape Portable Runtime error -5977 - Failure to load > dynamic library.): certdir: /etc/dirsrv/slapd-lenny > [14/Apr/2009:12:58:17 -0400] - ERROR: NSS Initialization Failed. > > Is a problem with mozldap not being linked properly? If so, how do I pass the proper options to ld? > > Ryan > > -- > Fedora-directory-users mailing list > Fedora-directory-users@redhat.com > https://www.redhat.com/mailman/listinfo/fedora-directory-users >
Ryan Braun [ADS]
2009-Apr-15 17:00 UTC
Re: [Fedora-directory-users] Trouble starting 1.2.0 on debian lenny.
On Wednesday 15 April 2009 16:50:21 Rich Megginson wrote:> Ryan Braun [ADS] wrote: > > On Tuesday 14 April 2009 19:41:26 Rob Crittenden wrote: > >>> gcc -shared -Wl,-soname -Wl,libssldap60.so -o libssldap60.so > >>> ./clientinit.o ./ldapsinit.o ./errormap.o -L../../../../../dist/lib > >>> -lldap60 -lprldap60 -L/usr/lib/ -lssl3 -lnss3 -lsoftokn3 -L/usr/lib/ > >>> -lplc4 -lplds4 - lnspr4 > >>> /usr/bin/ld: cannot find -lsoftokn3 > >> > >> You shouldn''t need to link this in at all. > >> > >> http://www.mozilla.org/projects/security/pki/nss/nss-3.4/nss-3.4-release > >>-no tes.html > > > > I''ve tried adding a CC=/usr/bin/gcc-4.1 -Wl, ''-rpath=/usr/lib/nss'' and > > the configure bailed here > > > > checking whether we are using GNU C++... yes > > checking whether c++ accepts -g... yes > > checking for gcc... /usr/bin/gcc-4.1 -Wl, -rpath-link=/usr/lib/nss > > checking whether the C compiler (/usr/bin/gcc-4.1 -Wl, > > -rpath-link=/usr/lib/nss ) works... no configure: error: installation or > > configuration problem: C compiler cannot create executables. > > What about using LDFLAGS="-L/usr/lib/nss" ? > > The real problem is that mozldap should not link directly against > softokn3 anymore - please file a bug at bugzilla.mozilla.org against the > LDAP C SDK component. >Will do Rich, but setting the LDFLAGS variable didn''t help either. make[3]: Entering directory `/tmp/fdsbuildscripts/mozldap/mozldap-6.0.5/mozilla/directory/c-sdk/ldap/libraries/libssldap'' ======= making ./libssldap60.so gcc -shared -Wl,-soname -Wl,libssldap60.so -o libssldap60.so ./clientinit.o ./ldapsinit.o ./errormap.o -L../../../../../dist/lib -lldap60 -lprldap60 -L/usr/lib/ -lssl3 -lnss3 -lsoftokn3 -L/usr/lib/ -lplc4 -lplds4 -lnspr4 /usr/bin/ld: cannot find -lsoftokn3 collect2: ld returned 1 exit status make[3]: *** [libssldap60.so] Error 1 make[3]: Leaving directory `/tmp/fdsbuildscripts/mozldap/mozldap-6.0.5/mozilla/directory/c-sdk/ldap/libraries/libssldap'' make[2]: *** [export] Error 2 make[2]: Leaving directory `/tmp/fdsbuildscripts/mozldap/mozldap-6.0.5/mozilla/directory/c-sdk/ldap/libraries'' make[1]: *** [export] Error 2 make[1]: Leaving directory `/tmp/fdsbuildscripts/mozldap/mozldap-6.0.5/mozilla/directory/c-sdk/ldap'' make: *** [export] Error 2 Here is some of config.log showing that LDFLAGS was set properly. This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. configure:662: checking host system type configure:683: checking target system type configure:701: checking build system type configure:971: checking for --with-svrcore configure:1237: checking for --with-nss configure:1260: checking for --with-nss-inc configure:1282: checking for --with-nss-lib configure:1525: checking for --with-nspr configure:1553: checking for --with-nspr-inc configure:1574: checking for --with-nspr-lib configure:1937: checking for whoami configure:2027: checking for c++ configure:2059: checking whether the C++ compiler (c++ -L ) works configure:2075: c++ -o conftest -L/usr/lib/nss conftest.C 1>&5 configure:2101: checking whether the C++ compiler (c++ -L/usr/lib/nss) is a cross-compiler configure:2106: checking whether we are using GNU C++ configure:2115: c++ -E conftest.C configure:2134: checking whether c++ accepts -g configure:2183: cc -c conftest.c 1>&5 configure:2200: cc -c conftest.c 1>&5 configure: In function ''main'': configure:2196: warning: incompatible implicit declaration of built-in function ''exit'' configure:2222: checking for gcc configure:2335: checking whether the C compiler (gcc -L/usr/lib/nss) works configure:2351: gcc -o conftest -L/usr/lib/nss conftest.c 1>&5 configure:2377: checking whether the C compiler (gcc -L/usr/lib/nss) is a cross-compiler
Rich Megginson
2009-Apr-15 17:34 UTC
Re: [Fedora-directory-users] Trouble starting 1.2.0 on debian lenny.
Ryan Braun [ADS] wrote:> On Wednesday 15 April 2009 16:50:21 Rich Megginson wrote: > >> Ryan Braun [ADS] wrote: >> >>> On Tuesday 14 April 2009 19:41:26 Rob Crittenden wrote: >>> >>>>> gcc -shared -Wl,-soname -Wl,libssldap60.so -o libssldap60.so >>>>> ./clientinit.o ./ldapsinit.o ./errormap.o -L../../../../../dist/lib >>>>> -lldap60 -lprldap60 -L/usr/lib/ -lssl3 -lnss3 -lsoftokn3 -L/usr/lib/ >>>>> -lplc4 -lplds4 - lnspr4 >>>>> /usr/bin/ld: cannot find -lsoftokn3 >>>>> >>>> You shouldn''t need to link this in at all. >>>> >>>> http://www.mozilla.org/projects/security/pki/nss/nss-3.4/nss-3.4-release >>>> -no tes.html >>>> >>> I''ve tried adding a CC=/usr/bin/gcc-4.1 -Wl, ''-rpath=/usr/lib/nss'' and >>> the configure bailed here >>> >>> checking whether we are using GNU C++... yes >>> checking whether c++ accepts -g... yes >>> checking for gcc... /usr/bin/gcc-4.1 -Wl, -rpath-link=/usr/lib/nss >>> checking whether the C compiler (/usr/bin/gcc-4.1 -Wl, >>> -rpath-link=/usr/lib/nss ) works... no configure: error: installation or >>> configuration problem: C compiler cannot create executables. >>> >> What about using LDFLAGS="-L/usr/lib/nss" ? >> >> The real problem is that mozldap should not link directly against >> softokn3 anymore - please file a bug at bugzilla.mozilla.org against the >> LDAP C SDK component. >> >> > > Will do Rich, but setting the LDFLAGS variable didn''t help either. >If you want to use an rpath, do configure --with-rpath=/some/path If you look at mozilla/directory/c-sdk/build.mk starting at around line 504 you will see the various commands (LINK_DLL) used to build shared libraries on linux and other *nix. You could try setting ALDFLAGS or DLL_LDFLAGS> > make[3]: Entering directory `/tmp/fdsbuildscripts/mozldap/mozldap-6.0.5/mozilla/directory/c-sdk/ldap/libraries/libssldap'' > ======= making ./libssldap60.so > gcc -shared -Wl,-soname -Wl,libssldap60.so -o libssldap60.so ./clientinit.o ./ldapsinit.o ./errormap.o -L../../../../../dist/lib -lldap60 -lprldap60 -L/usr/lib/ -lssl3 -lnss3 -lsoftokn3 -L/usr/lib/ -lplc4 -lplds4 -lnspr4 > /usr/bin/ld: cannot find -lsoftokn3 > collect2: ld returned 1 exit status > make[3]: *** [libssldap60.so] Error 1 > make[3]: Leaving directory `/tmp/fdsbuildscripts/mozldap/mozldap-6.0.5/mozilla/directory/c-sdk/ldap/libraries/libssldap'' > make[2]: *** [export] Error 2 > make[2]: Leaving directory `/tmp/fdsbuildscripts/mozldap/mozldap-6.0.5/mozilla/directory/c-sdk/ldap/libraries'' > make[1]: *** [export] Error 2 > make[1]: Leaving directory `/tmp/fdsbuildscripts/mozldap/mozldap-6.0.5/mozilla/directory/c-sdk/ldap'' > make: *** [export] Error 2 > > > > Here is some of config.log showing that LDFLAGS was set properly. > > This file contains any messages produced by compilers while > running configure, to aid debugging if configure makes a mistake. > > configure:662: checking host system type > configure:683: checking target system type > configure:701: checking build system type > configure:971: checking for --with-svrcore > configure:1237: checking for --with-nss > configure:1260: checking for --with-nss-inc > configure:1282: checking for --with-nss-lib > configure:1525: checking for --with-nspr > configure:1553: checking for --with-nspr-inc > configure:1574: checking for --with-nspr-lib > configure:1937: checking for whoami > configure:2027: checking for c++ > configure:2059: checking whether the C++ compiler (c++ -L ) works > configure:2075: c++ -o conftest -L/usr/lib/nss conftest.C 1>&5 > configure:2101: checking whether the C++ compiler (c++ -L/usr/lib/nss) is a cross-compiler > configure:2106: checking whether we are using GNU C++ > configure:2115: c++ -E conftest.C > configure:2134: checking whether c++ accepts -g > configure:2183: cc -c conftest.c 1>&5 > configure:2200: cc -c conftest.c 1>&5 > configure: In function ''main'': > configure:2196: warning: incompatible implicit declaration of built-in function ''exit'' > configure:2222: checking for gcc > configure:2335: checking whether the C compiler (gcc -L/usr/lib/nss) works > configure:2351: gcc -o conftest -L/usr/lib/nss conftest.c 1>&5 > configure:2377: checking whether the C compiler (gcc -L/usr/lib/nss) is a cross-compiler > > -- > Fedora-directory-users mailing list > Fedora-directory-users@redhat.com > https://www.redhat.com/mailman/listinfo/fedora-directory-users >
Ryan Braun [ADS]
2009-Apr-17 17:03 UTC
Re: [Fedora-directory-users] Trouble starting 1.2.0 on debian lenny.
On Wednesday 15 April 2009 17:34:01 Rich Megginson wrote:> >> What about using LDFLAGS="-L/usr/lib/nss" ? > >> > >> The real problem is that mozldap should not link directly against > >> softokn3 anymore - please file a bug at bugzilla.mozilla.org against the > >> LDAP C SDK component. > > > > Will do Rich, but setting the LDFLAGS variable didn''t help either. > > If you want to use an rpath, do > configure --with-rpath=/some/path > > If you look at mozilla/directory/c-sdk/build.mk starting at around line > 504 you will see the various commands (LINK_DLL) used to build shared > libraries on linux and other *nix. You could try setting ALDFLAGS or > DLL_LDFLAGS >Adding --with-rpath=/usr/lib/nss to the ./configure arguments doesn''t help. It looks like the rpath argument is getting passed properly to gcc though. ======= making ./libssldap60.so gcc -shared -Wl,-soname -Wl,libssldap60.so -Wl,-rpath,/usr/lib/nss -o libssldap60.so ./clientinit.o ./ldapsinit.o ./errormap.o -L../../../../../dist/lib -lldap60 -lprldap60 -L/usr/lib/ -lssl3 -lnss3 -lsoftokn3 -L/usr/lib/ -lplc4 -lplds4 -lnspr4 /usr/bin/ld: cannot find -lsoftokn3 collect2: ld returned 1 exit status make[3]: *** [libssldap60.so] Error 1 make[3]: Leaving directory `/tmp/fdsbuildscripts/mozldap-6.0.5/mozilla/directory/c-sdk/ldap/libraries/libssldap'' I haven''t done much monkeying around in build.mk (it looks a bit over my head), but I was able to at least "make it work" in the meantime by symlinking everything in /usr/lib/nss into /usr/lib. I''ll keep plugging away at it and see about a more sensible solution. Ryan
Rich Megginson
2009-Apr-17 17:07 UTC
Re: [Fedora-directory-users] Trouble starting 1.2.0 on debian lenny.
Ryan Braun [ADS] wrote:> On Wednesday 15 April 2009 17:34:01 Rich Megginson wrote: > >>>> What about using LDFLAGS="-L/usr/lib/nss" ? >>>> >>>> The real problem is that mozldap should not link directly against >>>> softokn3 anymore - please file a bug at bugzilla.mozilla.org against the >>>> LDAP C SDK component. >>>> >>> Will do Rich, but setting the LDFLAGS variable didn''t help either. >>> >> If you want to use an rpath, do >> configure --with-rpath=/some/path >> >> If you look at mozilla/directory/c-sdk/build.mk starting at around line >> 504 you will see the various commands (LINK_DLL) used to build shared >> libraries on linux and other *nix. You could try setting ALDFLAGS or >> DLL_LDFLAGS >> >> > > Adding --with-rpath=/usr/lib/nss to the ./configure arguments doesn''t help. It looks like the rpath argument is getting passed properly to gcc though. >I guess rpath is only for the runtime behavior - you still have to pass in -L/usr/lib/nss somehow so the linker knows where to find the lib at link time. In fact, you probably don''t need rpath - if NSS is built correctly, it should be able to find softokn3 at runtime. Did you try ALDFLAGS or DLL_LDFLAGS?> ======= making ./libssldap60.so > gcc -shared -Wl,-soname -Wl,libssldap60.so -Wl,-rpath,/usr/lib/nss -o libssldap60.so ./clientinit.o ./ldapsinit.o ./errormap.o -L../../../../../dist/lib -lldap60 -lprldap60 -L/usr/lib/ -lssl3 -lnss3 -lsoftokn3 -L/usr/lib/ -lplc4 -lplds4 -lnspr4 > /usr/bin/ld: cannot find -lsoftokn3 > collect2: ld returned 1 exit status > make[3]: *** [libssldap60.so] Error 1 > make[3]: Leaving directory `/tmp/fdsbuildscripts/mozldap-6.0.5/mozilla/directory/c-sdk/ldap/libraries/libssldap'' > > > I haven''t done much monkeying around in build.mk (it looks a bit over my head), but I was able to at least "make it work" in the meantime by symlinking everything in /usr/lib/nss into /usr/lib. > > I''ll keep plugging away at it and see about a more sensible solution. > > Ryan > > -- > Fedora-directory-users mailing list > Fedora-directory-users@redhat.com > https://www.redhat.com/mailman/listinfo/fedora-directory-users >