[Date Prev][Date Next] [Chronological] [Thread] [Top]

RE: failed assertion `LBER_VALID( ber )'



> -----Original Message-----
> From: Patrick H Radtke [mailto:phr2101@columbia.edu]

> Howard Chu wrote:
> >This occurs on Solaris systems because you're mixing the
> OpenLDAP code with
> >the Sun bundled LDAP libraries. Fix your build environment
> so that it only
> >uses one set of header and library files.

> Thanks for the tip, but we still haven't managed to figure it out.
> As far as I can tell we are only using the openLDAP, not the sun LDAP
> libraries.
>
> I have attached some information about the libraries incase
> you can spot
> something I missed,
> or if you have another idea
>
> Here is how I built my program
>
> g++ -c ldaptest.c -O -g -I/opt/openldap-2.1.23/include
> g++ -o ldaptest ldaptest.o \
> -L/opt/openldap-2.1.23/lib  -R/opt/openldap-2.1.23/lib  -lldap  -llber
>
> $ ldd ldaptest
>         libldap.so.2 =>  /opt/openldap-2.1.23/lib/libldap.so.2
>         liblber.so.2 =>  /opt/openldap-2.1.23/lib/liblber.so.2
>         libm.so.1 =>     /usr/lib/libm.so.1
>         libc.so.1 =>     /usr/lib/libc.so.1
>         libresolv.so.2 =>        /usr/lib/libresolv.so.2
>         libgen.so.1 =>   /usr/lib/libgen.so.1
>         libnsl.so.1 =>   /usr/lib/libnsl.so.1
>         libsocket.so.1 =>        /usr/lib/libsocket.so.1
>         libdl.so.1 =>    /usr/lib/libdl.so.1
>         libssl.so.0.9.6 =>       /opt/local/lib/libssl.so.0.9.6
>         libcrypto.so.0.9.6 =>    /opt/local/lib/libcrypto.so.0.9.6
>         libmp.so.2 =>    /usr/lib/libmp.so.2
>         /usr/platform/SUNW,Ultra-80/lib/libc_psr.so.1
>
>
>
> $ ldd libldap.so.2
>         libresolv.so.2 =>        /usr/lib/libresolv.so.2
>         libgen.so.1 =>   /usr/lib/libgen.so.1
>         libnsl.so.1 =>   /usr/lib/libnsl.so.1
>         libsocket.so.1 =>        /usr/lib/libsocket.so.1
>         libdl.so.1 =>    /usr/lib/libdl.so.1
>         libssl.so.0.9.6 =>       /opt/local/lib/libssl.so.0.9.6
>         libcrypto.so.0.9.6 =>    /opt/local/lib/libcrypto.so.0.9.6
>         libc.so.1 =>     /usr/lib/libc.so.1
>         libmp.so.2 =>    /usr/lib/libmp.so.2
>         /usr/platform/SUNW,Ultra-80/lib/libc_psr.so.1

This libldap was not built correctly. When built correctly it will have its
own dependency on liblber. I suspect you got a static copy of Sun's liblber
in there instead.

> $ ldd liblber.so.2
>         libc.so.1 =>     /usr/lib/libc.so.1
>         libdl.so.1 =>    /usr/lib/libdl.so.1
>         /usr/platform/SUNW,Ultra-80/lib/libc_psr.so.1


  -- Howard Chu
  Chief Architect, Symas Corp.       Director, Highland Sun
  http://www.symas.com               http://highlandsun.com/hyc
  Symas: Premier OpenSource Development and Support