WARNING: This server is unstable and will be retired in the next days. If you want to keep this forum available, please request immediately a migration on the Nabble Support forum. Forums that don't receive any migration request will be deleted forever.

 « Return to Thread: Building LDAP C SDK in Windows: libsasl.lib not found

Re: Building LDAP C SDK in Windows: libsasl.lib not found

by Mathias Fricke :: Rate this Message:

| View in Thread

i just found a workaround:

export  
SASL_LIBS=c:/Users/foo/Desktop/SW_Development/CMU_2.1.25/lib/libsasl.lib

--with-sasl-lib=/c/Users/foo/Desktop/SW_Development/CMU_2.1.25/lib/
converts to
-L/c/Users/foo/Desktop/SW_Development/CMU_2.1.25/lib/
and that in turn to
/Lc:/Users/foo/Desktop/SW_Development/CMU_2.1.25/lib/
but /L seems not to be a valid option to LINK.EXE (at least the one of  
VS2010)

> Hi,
>
> I'm trying to build the LDAP C SDK from source for Windows _32bit_(!).
> - Windows 7 Professional SP1 x64
> - VS 2010 Professional
> - Cyrus SASL 2.1.25
> - LDAP C SDK sources both 6.0.7 and yesterday's (2012-03-20) Mercurial  
> checkout
>
> - all prerequisites are satisfied (NSS, NSPR, OpenSSL build from source)
> - SASL builds, *dlls and .lib available
>
> LDAP C SDK build steps:
>
> foo@bar ~/Desktop/SW_Development/mozldap-6.0.7/mozilla/directory/c-sdk
> $ ./configure  
> --with-nss-inc=/c/Users/foo/Desktop//SW_Development/nss-3.13.3/mozilla/dist/release/no-policy/include/  
> --with-nss-
> lib=/c/Users/foo/Desktop/SW_Development/nss-3.13.3/mozilla/dist/release/no-policy/WINNT6.1_DBG.OBJ/lib/  
> --with-nspr-inc=/c/Users
> //foo//Desktop/SW_Development/nss-3.13.3/mozilla/nsprpub/dist/release/nspr20/4.9_20120320/include/  
> --with-nspr-lib=/c/Users/foo
> /Desktop/SW_Development/nss-3.13.3/mozilla/nsprpub/dist/release/nspr20/4.9_20120320/lib/  
> --with-sasl-inc=/c/Users/foo/Desktop/SW
> _Development/cyrus-sasl-2.1.25/include/  
> --with-sasl-lib=/c/Users/foo/Desktop/SW_Development/cyrus-sasl-2.1.25/lib
> loading cache ./config.cache
> checking host system type... i686-pc-mingw32
> checking target system type... i686-pc-mingw32
> checking build system type... i686-pc-mingw32
> checking for cl... cl
> checking for --with-svrcore... no
> checking for --with-nss... no
> checking for --with-nss-inc... using  
> /c/Users/foo/Desktop//SW_Development/nss-3.13.3/mozilla/dist/release/no-policy/include/
> checking for --with-nss-lib... using  
> /c/Users/foo/Desktop/SW_Development/nss-3.13.3/mozilla/dist/release/no-policy/WINNT6.1_DBG.O
> BJ/lib/
> checking for --with-nspr... no
> checking for --with-nspr-inc... using  
> /c/Users//foo//Desktop/SW_Development/nss-3.13.3/mozilla/nsprpub/dist/release/nspr20/4.9_20
> 120320/include/
> checking for --with-nspr-lib... using  
> /c/Users/foo/Desktop/SW_Development/nss-3.13.3/mozilla/nsprpub/dist/release/nspr20/4.9_2012
> 0320/lib/
> checking for lib... 1
> checking for --with-sasl... no
> checking for --with-sasl-inc... using  
> /c/Users/foo/Desktop/SW_Development/cyrus-sasl-2.1.25/include/
> checking for --with-sasl-lib... using  
> /c/Users/foo/Desktop/SW_Development/cyrus-sasl-2.1.25/lib
> checking for getaddrinfo... no
> checking for getaddrinfo in -lsocket... no
> checking for sasl_client_init in -lsasl2... no
> checking for sasl_client_init in -lsasl... no
> creating ./config.status
> creating Makefile
> creating config/Makefile
> creating config/autoconf.mk
> creating ldap/Makefile
> creating ldap/clients/tools/Makefile
> creating ldap/include/Makefile
> creating ldap/libraries/Makefile
> creating ldap/libraries/libldap/Makefile
> creating ldap/libraries/libprldap/Makefile
> creating ldap/libraries/libldif/Makefile
> creating ldap/libraries/liblber/Makefile
> creating ldap/libraries/libiutil/Makefile
> creating ldap/libraries/libssldap/Makefile
> creating ldap/libraries/libutil/Makefile
>
> foo@bar ~/Desktop/SW_Development/mozldap-6.0.7/mozilla/directory/c-sdk
>
> note
>
> checking for sasl_client_init in -lsasl2... no
> checking for sasl_client_init in -lsasl... no
>
> I am not sure, what that means -- but in the light of the failing build  
> it doesn't look good.
>
>
>
> foo@bar ~/Desktop/SW_Development/mozldap-6.0.7/mozilla/directory/c-sdk
> $ make
> cd config; make BUILD_DEBUG=optimize export
> make[1]: Entering directory  
> `/c/Users/foo/Desktop/SW_Development/mozldap-6.0.7/mozilla/directory/c-sdk/config'
> make[1]: Nothing to be done for `export'.
> make[1]: Leaving directory  
> `/c/Users/foo/Desktop/SW_Development/mozldap-6.0.7/mozilla/directory/c-sdk/config'
> cd ldap; make BUILD_DEBUG=optimize export
> make[1]: Entering directory  
> `/c/Users/foo/Desktop/SW_Development/mozldap-6.0.7/mozilla/directory/c-sdk/ldap'
> cd include; make BUILD_DEBUG=optimize export
> make[2]: Entering directory  
> `/c/Users/foo/Desktop/SW_Development/mozldap-6.0.7/mozilla/directory/c-sdk/ldap/include'
> nsinstall -D ../../../../dist/public/ldap
> nsinstall -D ../../../../dist/public/ldap-private
> nsinstall -R  -m 644 ./disptmpl.h ./lber.h ./ldap.h ./ldap-extension.h  
> ./ldap-platform.h ./ldap-to-be-deprecated.h ./ldap-deprecat
> ed.h ./ldap_ssl.h ./ldappr.h ./ldif.h ./iutil.h ./srchpref.h  
> ../../../../dist/public/ldap
> nsinstall -R  -m 644 ./../libraries/libldap/ldap-int.h  
> ./../libraries/liblber/lber-int.h ./portable.h ./ldaprot.h ./ldaplog.h  
> ../.
> ./../../dist/public/ldap-private
> make[2]: Leaving directory  
> `/c/Users/foo/Desktop/SW_Development/mozldap-6.0.7/mozilla/directory/c-sdk/ldap/include'
> cd libraries; make BUILD_DEBUG=optimize export
> make[2]: Entering directory  
> `/c/Users/foo/Desktop/SW_Development/mozldap-6.0.7/mozilla/directory/c-sdk/ldap/libraries'
> cd liblber; make BUILD_DEBUG=optimize export
> make[3]: Entering directory  
> `/c/Users/foo/Desktop/SW_Development/mozldap-6.0.7/mozilla/directory/c-sdk/ldap/libraries/liblber'
> nsinstall -R -m 444 ./nslber32v60.lib ../../../../../dist/lib
> make[3]: Leaving directory  
> `/c/Users/foo/Desktop/SW_Development/mozldap-6.0.7/mozilla/directory/c-sdk/ldap/libraries/liblber'
> cd libldif; make BUILD_DEBUG=optimize export
> make[3]: Entering directory  
> `/c/Users/foo/Desktop/SW_Development/mozldap-6.0.7/mozilla/directory/c-sdk/ldap/libraries/libldif'
> nsinstall -R -m 444 ./nsldif32v60.lib ../../../../../dist/lib
> nsinstall -R -m 444 ./nsldif32v60.lib ../../../../../dist/lib
> nsinstall -R -m 444 ./nsldif32v60.dll ../../../../../dist/lib
> nsinstall -R -m 444 ./nsldif32v60.dll ../../../../../dist/bin
> make[3]: Leaving directory  
> `/c/Users/foo/Desktop/SW_Development/mozldap-6.0.7/mozilla/directory/c-sdk/ldap/libraries/libldif'
> cd libiutil; make BUILD_DEBUG=optimize export
> make[3]: Entering directory  
> `/c/Users/foo/Desktop/SW_Development/mozldap-6.0.7/mozilla/directory/c-sdk/ldap/libraries/libiutil'
> nsinstall -R -m 444 ./nsiutil32v60.lib ../../../../../dist/lib
> make[3]: Leaving directory  
> `/c/Users/foo/Desktop/SW_Development/mozldap-6.0.7/mozilla/directory/c-sdk/ldap/libraries/libiutil'
> cd libldap; make BUILD_DEBUG=optimize export
> make[3]: Entering directory  
> `/c/Users/foo/Desktop/SW_Development/mozldap-6.0.7/mozilla/directory/c-sdk/ldap/libraries/libldap'
> ======= making ./nsldap32v60.dll
> link -DYNAMICBASE -OUT:"nsldap32v60.dll" -MAP -nologo -DLL  
> -SUBSYSTEM:WINDOWS  -SUBSYSTEM:CONSOLE   wsock32.lib kernel32.lib user3
> 2.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib  
> ole32.lib oleaut32.lib rpcrt4.lib uuid.lib winmm.lib ../../../.
> ./../dist/lib/nsldif32v60.lib ../../../../../dist/lib/nslber32v60.lib  
> -L/c/Users/foo/Desktop/SW_Development/cyrus-sasl-2.1.25/lib
>    -out:"nsldap32v60.dll" ./abandon.obj ./add.obj ./authzidctrl.obj  
> ./bind.obj ./cache.obj ./charray.obj ./charset.obj ./compare.ob
> j ./compat.obj ./control.obj ./countvalues.obj ./delete.obj  
> ./disptmpl.obj ./dsparse.obj ./error.obj ./extendop.obj ./free.obj ./f
> reevalues.obj ./friendly.obj ./getattr.obj ./getdn.obj ./getdxbyname.obj  
> ./geteffectiverightsctrl.obj ./getentry.obj ./getfilter.o
> bj ./getoption.obj ./getvalues.obj ./memcache.obj ./message.obj  
> ./modify.obj ./open.obj ./os-ip.obj ./proxyauthctrl.obj ./psearch.
> obj ./pwmodext.obj ./pwpctrl.obj ./referral.obj ./regex.obj ./rename.obj  
> ./request.obj ./reslist.obj ./result.obj ./saslbind.obj .
> /sbind.obj ./search.obj ./setoption.obj ./sort.obj ./sortctrl.obj  
> ./srchpref.obj ./tmplout.obj ./ufn.obj ./unbind.obj ./unescape.o
> bj ./url.obj ./userstatusctrl.obj ./utf8.obj ./vlistctrl.obj  
> ./whoami.obj ./saslio.obj ./dllmain.obj ./mozock.obj  -DEF:c:/Users/u
> lli/Desktop/SW_Development/mozldap-6.0.7/mozilla/directory/c-sdk/ldap/libraries/msdos/winsock/nsldap32.def  
> wsock32.lib kernel32.li
> b user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib  
> shell32.lib ole32.lib oleaut32.lib rpcrt4.lib uuid.lib winmm.lib ../
> ../../../../dist/lib/nsldif32v60.lib  
> ../../../../../dist/lib/nslber32v60.lib  
> -L/c/Users/foo/Desktop/SW_Development/cyrus-sasl-2.1
> .25/lib
> LINK : warning LNK4044: Nicht erkannte Option  
> /Lc:/Users/foo/Desktop/SW_Development/cyrus-sasl-2.1.25/lib; wird  
> ignoriert.
> LINK : warning LNK4044: Nicht erkannte Option  
> /Lc:/Users/foo/Desktop/SW_Development/cyrus-sasl-2.1.25/lib; wird  
> ignoriert.
> c:/Users/foo/Desktop/SW_Development/mozldap-6.0.7/mozilla/directory/c-sdk/ldap/libraries/msdos/winsock/nsldap32.def(39)  
> : warning
>   LNK4017: DESCRIPTION-Anweisung wird von der Zielplattform nicht  
> unterstützt; wird ignoriert.
>     Bibliothek "nsldap32v60.lib" und Objekt "nsldap32v60.exp" werden  
> erstellt.
> getoption.obj : error LNK2019: Verweis auf nicht aufgelöstes externes  
> Symbol "__imp__sasl_getprop" in Funktion "_ldap_get_option@1
> 2".
> saslbind.obj : error LNK2001: Nicht aufgelöstes externes Symbol  
> "__imp__sasl_getprop".
> saslio.obj : error LNK2001: Nicht aufgelöstes externes Symbol  
> "__imp__sasl_getprop".
> open.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol  
> "__imp__sasl_client_init" in Funktion "_nsldapi_initialize
> _defaults".
> open.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol  
> "__imp__sasl_set_alloc" in Funktion "_nsldapi_initialize_d
> efaults".
> open.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol  
> "__imp__sasl_set_mutex" in Funktion "_nsldapi_initialize_d
> efaults".
> request.obj : error LNK2019: Verweis auf nicht aufgelöstes externes  
> Symbol "__imp__sasl_dispose" in Funktion "_nsldapi_free_connec
> tion".
> saslio.obj : error LNK2001: Nicht aufgelöstes externes Symbol  
> "__imp__sasl_dispose".
> saslbind.obj : error LNK2019: Verweis auf nicht aufgelöstes externes  
> Symbol "__imp__sasl_client_step" in Funktion "_nsldapi_sasl_d
> o_bind".
> saslbind.obj : error LNK2019: Verweis auf nicht aufgelöstes externes  
> Symbol "__imp__sasl_errdetail" in Funktion "_nsldapi_sasl_do_
> bind".
> saslbind.obj : error LNK2019: Verweis auf nicht aufgelöstes externes  
> Symbol "__imp__sasl_client_start" in Funktion "_nsldapi_sasl_
> do_bind".
> setoption.obj : error LNK2019: Verweis auf nicht aufgelöstes externes  
> Symbol "__imp__sasl_setprop" in Funktion "_ldap_set_option@1
> 2".
> saslio.obj : error LNK2001: Nicht aufgelöstes externes Symbol  
> "__imp__sasl_setprop".
> saslio.obj : error LNK2019: Verweis auf nicht aufgelöstes externes  
> Symbol "__imp__sasl_decode" in Funktion "_nsldapi_sasl_read".
> saslio.obj : error LNK2019: Verweis auf nicht aufgelöstes externes  
> Symbol "__imp__sasl_encode" in Funktion "_nsldapi_sasl_write".
> saslio.obj : error LNK2019: Verweis auf nicht aufgelöstes externes  
> Symbol "__imp__sasl_client_new" in Funktion "_nsldapi_sasl_open
> ".
> nsldap32v60.dll : fatal error LNK1120: 12 nicht aufgelöste externe  
> Verweise.
> make[3]: *** [nsldap32v60.dll] Error 96
> make[3]: Leaving directory  
> `/c/Users/foo/Desktop/SW_Development/mozldap-6.0.7/mozilla/directory/c-sdk/ldap/libraries/libldap'
> make[2]: *** [export] Error 2
> make[2]: Leaving directory  
> `/c/Users/foo/Desktop/SW_Development/mozldap-6.0.7/mozilla/directory/c-sdk/ldap/libraries'
> make[1]: *** [export] Error 2
> make[1]: Leaving directory  
> `/c/Users/foo/Desktop/SW_Development/mozldap-6.0.7/mozilla/directory/c-sdk/ldap'
> make: *** [export] Error 2
>
> foo@bar ~/Desktop/SW_Development/mozldap-6.0.7/mozilla/directory/c-sdk
> $
>
> "Nicht aufgelöstes externes Symbol" == "unresolved external symbol" (BTW  
> is there a way to make that MozillaBuild and the tools called output  
> english messages instead of localized?)
>
> according to thise warning
>
> LINK : warning LNK4044: Nicht erkannte Option  
> /Lc:/Users/foo/Desktop/SW_Development/cyrus-sasl-2.1.25/lib; wird  
> ignoriert.
> LINK : warning LNK4044: Nicht erkannte Option  
> /Lc:/Users/foo/Desktop/SW_Development/cyrus-sasl-2.1.25/lib; wird  
> ignoriert.
>
> the linker does not recognize the --with-sasl-lib option as a valid path  
> to the .lib file -- hence, it's not found and linking fails.
>
> Is this a bug (if so, how to work around) or did I miss something here?
>
> Thanks in advance
>
> _______________________________________________
> dev-tech-ldap mailing list
> dev-tech-ldap@...
> https://lists.mozilla.org/listinfo/dev-tech-ldap


--
--------------------------------------------------
Mathias Fricke
mfricke@...

Modula4 (Einzelunternehmen)
Michael Gellner
Gleimstr. 55
10437 Berlin
Tel: +49 (30) 400 53 682
Fax: +49 (30) 400 53 683

Allgemein: info@...
Support: http://support.modula4.com/
Web: http://www.modula4.de/

Digital Asset Management - We Deliver
Dedicated Experts | Complete Solutions | Real Results
--------------------------------------------------

Publizieren Sie auf dem iPad und Android Tablets mit WoodWing:
http://www.modula4.com/de/solutions/products/woodwing

_______________________________________________
dev-tech-ldap mailing list
dev-tech-ldap@...
https://lists.mozilla.org/listinfo/dev-tech-ldap

 « Return to Thread: Building LDAP C SDK in Windows: libsasl.lib not found