Cyrus-SASL 2.1.22 and SunOS 5.8 linking errors.

vincent.blondel at ing.be vincent.blondel at ing.be
Tue Sep 23 06:57:11 EDT 2008


Hello,

I am trying to compile Cyrus-SASL 2.1.22 on my sun box V210 running
SunOS 5.8 but I get some problem with it. 

First of all, when I try to statically specify OpenSSL libraries I get
this ...

..
Making install in sasldb
make[1]: Entering directory
`/home/u7206160/gnu/cyrus-sasl/cyrus-sasl-2.1.22/sasldb'
/bin/sh ../libtool --mode=link /usr/local/bin/gcc -static-libgcc  -Wall
-W -O2 -pipe  -L/usr/local/openssl-0.9.8i/lib
-R/usr/local/openssl-0.9.8i/lib -L/usr/local/lib -R/usr/local/lib
/usr/local/openssl-0.9.8i/lib/libssl.a
/usr/local/openssl-0.9.8i/lib/libcrypto.a -o libsasldb.la   allockey.lo
db_ndbm.lo  -lresolv -lresolv   -lsocket
libtool: link: cannot build libtool library `libsasldb.la' from
non-libtool objects: /usr/local/openssl-0.9.8i/lib/libssl.a
/usr/local/openssl-0.9.8i/lib/libcrypto.a
make[1]: *** [libsasldb.la] Error 1
make[1]: Leaving directory
`/home/u7206160/gnu/cyrus-sasl/cyrus-sasl-2.1.22/sasldb'
make: *** [install-recursive] Error 1

I do not really understand this message but I tried OpenSSL version
compiled by sunfreeware. I also tried to compile my own version of
openssl-0.9.8i.

So I changed a little bit my compile script by replacing line

  LDFLAGS="-L/usr/local/lib -R/usr/local/lib $_OPENSSL/lib/libssl.a
$_OPENSSL/lib/libcrypto.a"

with 

  LDFLAGS="-L/usr/local/lib -R/usr/local/lib"

After changing this line I can get my soft compiled but I get some
linking errors. When I do an ldd of each of the binaries and libraries
everything is ok except I do not see any linking to openssl libraries
.. I get some (file not found) error messages with library
/usr/local/lib/sasl2/libgssapiv2.so ( see below )

$ ldd /usr/local/lib/sasl2/libgssapiv2.so
        libgssapi_krb5.so.2 =>   (file not found)
        libkrb5.so.3 =>  (file not found)
        libk5crypto.so.3 =>      (file not found)
        libcom_err.so.3 =>       (file not found)
        libkrb5support.so.0 =>   (file not found)
        libresolv.so.2 =>        /usr/lib/libresolv.so.2
        libsocket.so.1 =>        /usr/lib/libsocket.so.1
        libnsl.so.1 =>   /usr/lib/libnsl.so.1
        libc.so.1 =>     /usr/lib/libc.so.1
        libdl.so.1 =>    /usr/lib/libdl.so.1
        libmp.so.2 =>    /usr/lib/libmp.so.2
        /usr/platform/SUNW,Sun-Fire-V210/lib/libc_psr.so.1

*** COMPLETE COMPILE SCRIPT ***

#!/usr/local/bin/bash

umask 022

PKG=cyrus-sasl-2.1.22
PREFIX=/usr/local

export PKG PREFIX

rm -rf $PKG
gzip -dc $PKG.tar.gz |tar xvf -
cd $PKG

_PATH=/usr/ccs/bin:/bin:/usr/bin:/usr/local/bin
_CC="/usr/local/bin/gcc -static-libgcc"
_OPENSSL="/usr/local/openssl-0.9.8i"

#LD_OPTIONS="-L/usr/local/lib -R/usr/local/lib" \

/usr/bin/env  \
    PATH=$_PATH \
    CC="$_CC" \
    CXX="$_CC" \
    AUTOCONF="/usr/local/bin/autoconf" \
    AUTOHEADER="/usr/local/bin/autoheader" \
    AUTOIFNAMES="/usr/local/bin/ifnames" \
    AUTOM4TE="/usr/local/bin/autom4te" \
    AUTORECONF="/usr/local/bin/autoreconf" \
    AUTOSCAN="/usr/local/bin/autoscan" \
    AUTOUPDATE="/usr/local/bin/autoupdate" \
    INSTALL="/usr/local/bin/install -c -o bin -g bin -m 755" \
    INSTALL_DATA="/usr/local/bin/install -o bin -g bin -m 444" \
    INSTALL_PROGRAM="/usr/local/bin/install -o bin -g bin -m 555" \
    INSTALL_SCRIPT="/usr/local/bin/install -o bin -g bin -m 555" \
    CFLAGS="-O2 -pipe" \
    CPPFLAGS="-I/usr/local/include -I$_OPENSSL/include" \
    LDFLAGS="-L/usr/local/lib -R/usr/local/lib $_OPENSSL/lib/libssl.a
$_OPENSSL/lib/libcrypto.a" \
    SHELL=/bin/sh \
    CONFIG_SHELL=/bin/sh \
         ./configure \
        --prefix=/usr/local \
        --sysconfdir=/etc \
        --mandir=/usr/local/man \
        --infodir=/usr/local/info \
        --with-configdir=/usr/local/lib/sasl2:/usr/local/etc/sasl2 \
        --with-plugindir=/usr/local/lib/sasl2 \
        --with-dbpath=/var/lib/sasl/sasldb2 \
        --enable-auth-sasldb \
        --with-rc4=openssl \
        --with-saslauthd=/var/run/saslauthd \
        --enable-gssapi=/usr/local/lib/libgssapi_krb5.so \
        --with-gss_impl=mit \
        --disable-krb4 \
        --with-openssl=$_OPENSSL \
        --build=sparc64-sun-solaris2.8

/usr/local/bin/make
sudo /usr/bin/env PATH=$_PATH /usr/local/bin/make install

exit 0

**** END ****

So above you  the complete compile script. If I really good understand
it seems I get problems with ssl and/or gssapi libraries. Does somebody
get Cyrus-SASL compiled on a sun box 5.8 If yes your help is appreciated
because I need to get this package compiled, linked to mit-kerberos and
statically including gcc and ssl libraries.

Many thanks for your help.
Vincent.
-----------------------------------------------------------------
ATTENTION:
The information in this electronic mail message is private and
confidential, and only intended for the addressee. Should you
receive this message by mistake, you are hereby notified that
any disclosure, reproduction, distribution or use of this
message is strictly prohibited. Please inform the sender by
reply transmission and delete the message without copying or
opening it.

Messages and attachments are scanned for all viruses known.
If this message contains password-protected attachments, the
files have NOT been scanned for viruses by the ING mail domain.
Always scan attachments before opening them.
-----------------------------------------------------------------




More information about the Cyrus-sasl mailing list