Installing Cyrus SASL with sendmail on Solaris
The following steps show how to install Cyrus SASL on Solaris, and build sendmail with Cyrus SASL support.
1. Download Cyrus SASL and unpack the source.
2. Build and install Cyrus SASL.
$ ./configure --with-openssl=/usr/local/ssl
Note: On Solaris 8 systems, I had to use the following configure command to build Cyrus SASL:
$ CFLAGS=-DOPENSSL_DISABLE_OLD_DES_SUPPORT=1 ./configure --with-openssl=/usr/local/ssl
Without the CFLAGS modification, I received the following error:
In file included from auth_getpwent.c:53:
/usr/include/crypt.h:22: parse error before '(' token
/usr/include/crypt.h:22: parse error before "const"
make[3]: *** [auth_getpwent.o] Error 1
$ make
# make install
3. Rebuild sendmail with Cyrus SASL support.
$ cd $sendmail_source
Add the following to devtools/Site/site.config.m4:
APPENDDEF(`confLIBDIRS', `-L/usr/local/lib')
APPENDDEF(`confENVDEF', `-DSASL=2')
APPENDDEF(`conf_sendmail_LIBS', `-lsasl2')
$ ./Build -c
# ./Build install
4. Test sendmail for Cyrus SASL support.
$ sendmail -d0.1 -bt < /dev/null
...
Compiled with: DNSMAP LOG MAP_REGEX MATCHGECOS MILTER MIME7TO8 MIME8TO7
NAMED_BIND NDBM NETINET NETINET6 NETUNIX NEWDB NIS NISPLUS
PIPELINING SASLv2 SCANF STARTTLS USERDB XDEBUG
...
Troubleshooting
"ld.so.1: /usr/lib/sendmail: fatal: libsasl2.so.2: open failed: No such file or directory"
If you receive this error, make sure /usr/local/lib is in your Default Library Path.
$ crle
Default configuration file (/var/ld/ld.config) not found
Default Library Path (ELF): /usr/lib (system default)
Trusted Directories (ELF): /usr/lib/secure (system default)
# crle -u -l /usr/local/lib
Back to brandonhutchinson.com.
Last modified: 2006/07/31