I do not profess to be an expert, but let me at least share some
experience...I think I have a moderately similar config -

Solaris 5.8
Sendmail 8.12.1
Cyrus IMAPD 2.0.16
SASL 1.5.24
OpenSSL 0.9.6b (./Configure solaris-sparcv9-gcc shared; gcc 3.0.1)
BerkeleyDB 3.3.11

cyrus-imapd config command

./configure --with-sasl=/usr/local --with-openssl=/usr/local/ssl 
--with-tcl=/usr/local/lib
--prefix=/usr --with-com_err=/usr/local --with-auth=unix 
--with-libwrap=/usr/lib
--disable-krb --disable-gssapi

I've worked on this for a _while_ in and amongst other stuff. I think I 
ended up moving all of
the libsasl stuff to /usr/local/lib, as I had trouble getting it to work 
quite right
without it in a standard location. I did replace the gcc and sendmail, 
among other things,
to end up with a more gnu-like config.

The error your getting about the 'add_to_... not being referenced is 
strange - it is
as if these files were incorrectly generated during your Configure. I think 
these
*_err.c files are generated at that time. I have no such reference in my files.

I also had to add the '-R/path/to/libname' to my LDFLAGS/LDOPTS for many of 
these builds
so that the executable could find the library correctly at run time. This 
may have been
due to using a pure GNU gcc.


FWIW, for Solaris, list of supporting software:

# ls -la /usr/local/src

total 24708
drwxr-xr-x  36 root     other       1024 Oct  9 16:58 .
drwxr-xr-x  21 root     other       1024 Oct 10 11:40 ..
drwxr-xr-x  87 root     other       2048 Sep 25 16:00 8_Recommended

(these are recommended patches from Sun for Solaris 8)

drwxr-xr-x   5 root     other        512 Sep 26 15:06 SUNWski

(patch from the Solaris 2.7 CD's for /dev/random)
(ended up punting on this and using ANDIrand, which is NON-blocking - makes
a big difference for SMTP AUTH)

drwxrwxrwx   7 17023    17000       1536 Sep 11 15:06 autoconf-2.52
drwxrwxrwx   5 1000     1000        1024 Sep 11 15:59 automake-1.5

(The cyrus stuff or it's prereq's wanted these)

drwxr-xr-x  15 root     other       1024 Sep 11 16:10 binutils-2.11.2

(for gnu ld - unclear whether this hurts or helps - see Perl doc for
Solaris references)

drwxrwxrwx   3 18518    staff       1536 Sep 13 10:36 com_err-v1.2

(required for the cyrus stuff)

drwxrwxrwx  26 38579    staff       1024 Sep 28 12:01 cyrus-imapd-2.0.16
drwxrwxrwx  14 38579    staff       1024 Sep 28 09:09 cyrus-sasl-1.5.24
drwxrwxr-x  50 cvs      100         1024 Jul 12 21:06 db-3.3.11

drwxrwxrwx  17 9160     65516       1024 Sep 25 16:53 gcc-3.0.1

(Some compile problems led me to comments on the web about gcc's
on Solaris that had originally been compiled with Sun's cc, and
were therefore somehow inadequate, so I got the latest gcc
and did a 'make bootstrap' - I think this helped quite a bit)

drwxrwxrwx   9 500      100         1024 Sep 28 09:07 libtool-1.4.1
drwxr-xr-x   7 root     other       1024 Sep 11 15:04 m4-1.4

(along the lines of comments on autoconf, etc above)

drwxrwxr-x   4 500      500         6144 Oct  2 17:38 openssh-2.9p2

(went back and configured this --with-tcp-wrappers )

drwxr-xr-x  20 root     other       1024 Sep 26 08:56 openssl-0.9.6b
drwxr-xr-x  29 504      504         4608 Sep 29 06:46 perl-5.6.1

(along the lines of the comments for gcc above)

drwxr-xr-x  22 1037     1700        1024 Oct  2 09:04 sendmail-8.12.1
drwxrwxr-x  11 146      100          512 Apr  6  2001 tcl8.3.3
drwxrwxr-x  11 146      100          512 Aug  6 22:06 tcl8.4a3
drwxr--r--   2 309      326         2048 Sep  6 15:51 tcp_wrappers_7.6
drwxrwxr-x  12 146      100          512 Aug  6 22:12 tk8.4a3
drwxr-xr-x   7 root     other       1536 Sep  5 11:07 zlib-1.1.3


At 04:21 PM 11/15/2001 -0500, you wrote:

>Here is what I'm using:
>
>SunOS servername 5.8 Generic_108528-11 sun4u sparc SUNW,Sun-Blade-100
>cyrus-sasl-1.5.27
>cyrus-imapd-2.0.16
>afs 3.6-2.26
>krb4-1.0.8
>db-3.3.11
>
>cyrus-sasl was configured and made with:
>./configure --enable-gssapi=no --enable-anon=no --enable-krb4 \
>--enable-plain --prefix=/usr/local/sasl --with-dbpath=/usr/local/sasl/db \
>--with-plugindir=/usr/local/sasl/lib --with-dblib=berkeley
>
>It had errors, to get it to work I had to execute the following so the
>configure script could do its configuring. [;
>setenv CPPFLAGS "-I/usr/software/krb4/include -I/usr/software/db/include"
>setenv LDFLAGS "-L/usr/software/krb4/lib -L/usr/software/db/lib"
>setenv LIBS "-lkrb -lnsl -ldes"
>
>At any rate though, libsasl compiled without a hitch, although I haven't
>actually tested the binaries. I assume that they work.
>
>I ran into my problem with compiling cyrus-imapd which I have yet to
>resolve. Again, I had problems with the configure script breaking. Here is
>what I executed:
>
>./configure --prefix=/usr/local/cyrus --with-krb=/usr/software/krb4 \
>--with-openssl=/usr/software/openssl --with-afs=/usr/afsws \
>--with-sasl=/usr/local/sasl --with-dbdir=/usr/software/db
>
>Here is where it bails:
>checking for sasl.h... yes
>checking for sasl_getprop in -lsasl... no
>configure: error: Cannot continue without libsasl.
>Get it from ftp://ftp.andrew.cmu.edu:/pub/cyrus-mail/.
>
>However, libsasl is installed. I figured out most of the libraries it
>needed to get it the libsasl checking routine working, which for the sake
>of including it is:
>-- begin test --
>char sasl_getprop();
>
>int main() {
>sasl_getprop()
>; return 0; }
>-- end test --
>
>So, after some playing around I settled on these environment variables:
>setenv CPPFLAGS "-I/usr/software/krb4/include -I/usr/software/db/include"
>setenv LDFLAGS "-L/usr/software/openssl/lib -L/usr/software/krb4/lib \
>                 -L/usr/software/db/lib -L/usr/afsws/lib"
>setenv LIBS "-lkdb -lkrb -lsocket -lnsl -lresolv -lcrypto -lafsauthent"
>
>The configure works with this, but make fails. Here is the snipping of the
>output around where the compile breaks:
>
>ranlib libimap.a
>gcc -L/usr/software/db/lib -L/usr/software/db/lib -L/usr/local/lib
>-L/usr/software/openssl/lib -L/usr/software/krb4/lib -L/usr/software/db/lib
>-L/usr/afsws/lib -L/usr/software/openssl/lib -g -O2 -I/usr/afsws/include
>-o imapd \
>  ../master/service.o pushstats.o imapd.o index.o tls.o libimap.a
>../acap/libacap.a ../lib/libcyrus.a  -L/usr/local/sasl/lib -lsasl  -ldb-3
>-lkdb -lkrb -lsocket -lnsl -lresolv -lcrypto -lafsauthent -lssl -lcrypto
>-lcom_err
>libimap.a(imap_err.o): In function `initialize_imap_error_table':
>/usr/local/builds/cyrus-imapd-2.0.16/imap/imap_err.c:51: undefined
>reference to `add_to_error_table'
>../acap/libacap.a(acap_err.o): In function `initialize_acap_error_table':
>/usr/local/builds/cyrus-imapd-2.0.16/acap/acap_err.c:26: undefined
>reference to `add_to_error_table'
>collect2: ld returned 1 exit status
>make[1]: *** [imapd] Error 1
>make[1]: Leaving directory `/usr/local/builds/cyrus-imapd-2.0.16/imap'
>make: *** [all] Error 1
>
>Any suggestions on how to get it to compile? [; Thanks in advance (and
>afterwards).
>
>Regards,
>Tom

Reply via email to