Hello,

this is a bit specific to my system but I think it is worse to mention here:

I am using the 2.2 branch out of cvs. The configure script there contains an option --with-perl which I specified as:

--with-perl=/usr/local/perl-5.8.0/bin/perl

I also specify --cyrus-prefix=/usr/local/cyrus2-cvs

I have two perl installations on my system. One resides in /usr/perl5 (Solaris8-ix86) which is actually a bit broken so that I had to install a new perl into /usr/local/perl-5.8.0 from source.

To get everythink working I had to do the following things:

In all Makefile.PL files I had to add the two libraries -lrt and -ldb-3.2 (which is the berkeley version which is used for the whole cyrus installation) like:

'LIBS' => ["$SASL_LIB $OPENSSL_LIB -lssl -lcrypto -ldb-3.2 -lrt"]

I do not quite understand why -lssl and -lcrypto are defined separately because of $OPENSSL_LIB !

To get cyradm working I had to also tweak the cyradm shellscript as well:

case "x$BASH_VERSION" in
x) exec /usr/local/perl-5.8.0/bin/perl -I/usr/local/cyrus2/lib/site_perl/5.8.0/i86pc-solaris -MCyrus::IMAP::Shell -e shell -- ${1+"$@"} ;;
*) exec /usr/local/perl-5.8.0/bin/perl -I/usr/local/cyrus2/lib/site_perl/5.8.0/i86pc-solaris -MCyrus::IMAP::Shell -e shell -- "$@" ;;
esac

which before looked like:

case "x$BASH_VERSION" in
x) exec perl -MCyrus::IMAP::Shell -e shell -- ${1+"$@"} ;;
*) exec perl -MCyrus::IMAP::Shell -e shell -- "$@" ;;
esac

and caused cyradm to invoke the broken perl and not the perl specified in --with-perl !

I would suggest doing this with the --with-perl option! I thought that this would be done automatically but it actually does not. The --with-perl option only has an effect on the compilation process where the MakeMaker gets called with the correct perl binary in /usr/local/perl-5.8.0 ! That all was a bit confusing for me but after all everything works as expected and I think that it is great to have the perl-dependent stuff under cyrus-prefix as well.
The perl dependent stuff gets installed into cyrus-prefix/lib and that is where it should I think!

>ls -R /usr/local/cyrus2-cvs/lib/
/usr/local/cyrus2-cvs/lib/:
5.8.0 libcyrus.a site_perl

/usr/local/cyrus2-cvs/lib/5.8.0:
i86pc-solaris

/usr/local/cyrus2-cvs/lib/5.8.0/i86pc-solaris:

/usr/local/cyrus2-cvs/lib/site_perl:
5.8.0

/usr/local/cyrus2-cvs/lib/site_perl/5.8.0:
i86pc-solaris

/usr/local/cyrus2-cvs/lib/site_perl/5.8.0/i86pc-solaris:
auto Cyrus perllocal.pod

/usr/local/cyrus2-cvs/lib/site_perl/5.8.0/i86pc-solaris/auto:
Cyrus

/usr/local/cyrus2-cvs/lib/site_perl/5.8.0/i86pc-solaris/auto/Cyrus:
IMAP SIEVE

/usr/local/cyrus2-cvs/lib/site_perl/5.8.0/i86pc-solaris/auto/Cyrus/IMAP:
IMAP.bs IMAP.so

/usr/local/cyrus2-cvs/lib/site_perl/5.8.0/i86pc-solaris/auto/Cyrus/SIEVE:
managesieve

/usr/local/cyrus2-cvs/lib/site_perl/5.8.0/i86pc-solaris/auto/Cyrus/SIEVE/managesieve:
managesieve.bs managesieve.so

/usr/local/cyrus2-cvs/lib/site_perl/5.8.0/i86pc-solaris/Cyrus:
IMAP IMAP.pm SIEVE

/usr/local/cyrus2-cvs/lib/site_perl/5.8.0/i86pc-solaris/Cyrus/IMAP:
Admin.pm IMSP.pm Shell.pm

/usr/local/cyrus2-cvs/lib/site_perl/5.8.0/i86pc-solaris/Cyrus/SIEVE:
managesieve.pm







Reply via email to