Build trouble, and patch suggestions

Paul Boven p.boven at chello.nl
Sat Mar 15 18:13:04 EST 2003


L.S.,

After the dB-problems earlier this week I'm trying to build the latest 
and greatest cyrus-imap, with Berkeley-DB 4.0.14 as suggested.

I've run into a few minor issues though:

When doing a configure on cyrus-sasl-2.1.12, it won't do anything with 
the '--with-openssl' option. Looking in the configure-source,  line 
4891, it turns out that the actual option to use
is '--with-with-openssl', which is caused by line 611 of configure.in. 
Proposed patch:

*** configure.in.orig    Sat Mar 15 23:45:34 2003
--- configure.in    Sat Mar 15 23:45:50 2003
***************
*** 608,614 ****
  dnl Test for OpenSSL
  dnl
  IMAP_PROGS=""
! AC_ARG_WITH(with-openssl,[  --with-openssl=PATH     use OpenSSL from 
PATH],
      with_openssl="${withval}")
 
  OPENSSL_INC=
--- 608,614 ----
  dnl Test for OpenSSL
  dnl
  IMAP_PROGS=""
! AC_ARG_WITH(openssl,[  --with-openssl=PATH     use OpenSSL from PATH],
      with_openssl="${withval}")
 
  OPENSSL_INC=

Caveat: I haven't actually tested the patch because I don't have the 
whole automake/autoconf chain setup on that particular machine, but it 
seems a no-brainer.

In cyrus-imapd-2.1.12 I ran into another configure-problem:
In line 2853 of configure, the command-line being built to test for the 
berkley-db has the library-itself listed before the -L searchpath. 
Apparently the linker on Solaris gets a bit confused about this, and 
refuses to find libdb.so. Reversing the two values in the LIBS variable 
makes things work for me, and doesn't seem likely to break anything for 
anyone else. Suggested patch:

*** aclocal.m4.orig    Sun Mar 16 00:00:04 2003
--- aclocal.m4    Sun Mar 16 00:01:47 2003
***************
*** 455,461 ****
 
          for dbname in db-4.1 db4.1 db-4.0 db4.0 db-4 db4 db-3.3 db3.3 
db-3.2 db3.2 db-3.1 db3.1 db-3 db3 db
            do
!             AC_CHECK_LIB($dbname, db_create, BDB_LIBADD="$BDB_LIBADD 
-l$dbname";
                dblib="berkeley"; break, dblib="no")
            done
          if test "$dblib" = "no"; then
--- 455,461 ----
 
          for dbname in db-4.1 db4.1 db-4.0 db4.0 db-4 db4 db-3.3 db3.3 
db-3.2 db3.2 db-3.1 db3.1 db-3 db3 db
            do
!             AC_CHECK_LIB($dbname, db_create, BDB_LIBADD="-l$dbname 
$BDB_LIBADD";
                dblib="berkeley"; break, dblib="no")
            done
          if test "$dblib" = "no"; then

Once again, untested. But changing the configure script itself did help 
me get past this hurdle.

The next problem I can't fix as easily. When compiling imap/squat.c:
"./../lib/xmalloc.h", line 69: syntax error before or at: __attribute__
"./../lib/xmalloc.h", line 69: warning: old-style declaration or 
incorrect type for: __attribute__
"./../lib/xmalloc.h", line 69: warning: syntax error:  empty declaration
cc: acomp failed for squat.c

The system in question is a Solaris 9 machine, using Sun One 
Compiler-Collection (aka Forte 7).

Does anyone have suggestions here?

Regards, Paul Boven.





More information about the Info-cyrus mailing list