Make errors with Cyrus::IMAP

H. Scott Brown hs.brown at smius.com
Tue Jan 25 13:26:49 EST 2005


Arghh...

Well, I finally made it to where make test will run, but I now get the
following output:

make test
PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e"
"test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
t/01-imclient....
 

t/01-imclient....ok 1/10enter an IMAP server to use for testing: localhost
imclient_connect: unknown host "localhost.localdomain" at t/01-imclient.t
line 68, <STDIN> line 1.

 

t/01-imclient....dubious
        Test returned status 255 (wstat 65280, 0xff00)
DIED. FAILED tests 2-10
        Failed 9/10 tests, 10.00% okay
t/02-admin.......defined(@array) is deprecated at t/02-admin.t line 91.
        (Maybe you should just omit the defined()?)
Name "main::quota" used only once: possible typo at t/02-admin.t line 91.

                                                                            
t/02-admin.......ok 1/7enter an IMAP server to use for testing: localhost
imclient_connect: unknown host "localhost.localdomain" at
/cyrus-imapd-2.2.9/perl/imap/blib/lib/Cyrus/IMAP/Admin.pm line 71, <STDIN>
line 1.
Use of uninitialized value in subroutine entry at
/cyrus-imapd-2.2.9/perl/imap/blib/lib/Cyrus/IMAP/Admin.pm line 107, <STDIN>
line 1.
        (in cleanup) client is not of type Cyrus::IMAP at
/cyrus-imapd-2.2.9/perl/imap/blib/lib/Cyrus/IMAP/Admin.pm line 107, <STDIN>
line 1.

 

t/02-admin.......dubious
        Test returned status 255 (wstat 65280, 0xff00)
DIED. FAILED tests 2-7
        Failed 6/7 tests, 14.29% okay
Failed Test     Stat Wstat Total Fail  Failed  List of Failed
----------------------------------------------------------------------------
---
t/01-imclient.t  255 65280    10   18 180.00%  2-10
t/02-admin.t     255 65280     7   12 171.43%  2-7
Failed 2/2 test scripts, 0.00% okay. 15/17 subtests failed, 11.76% okay.
make: *** [test_dynamic] Error 2
#

When I run imtest to test the Cyrus IMAP install, everything works perfectly
as it should. I can send the output of them if necessary.

What I don't get is the "client is not of type Cyrus::IMAP"; this is a make
test in $SOURCEDIR/perl/imap!

Any clues?

Thanks,
--H. Scott Brown


-----Original Message-----
From: owner-info-cyrus at lists.andrew.cmu.edu
[mailto:owner-info-cyrus at lists.andrew.cmu.edu] On Behalf Of Ralph Roessner
Sent: Monday, January 24, 2005 11:34 AM
To: info-cyrus at lists.andrew.cmu.edu
Subject: Re: Make errors with Cyrus::IMAP

Hello!

On Mon, Jan 24, 2005 at 09:37:06AM -0800,
  H. Scott Brown wrote:
> Hello, List,
> 
> OK, I tried the recommended procedure, i.e. make LD_OPTIONS=-lrt, and no
> longer get a linking error with fdatasync, BUT (arghhh...)...
(...)

Looks like you are missing other libs as well, and this time it really is
BDB.

> 
> So, per request, here is the requested ldd output:
(...)

Ok, so I was barking up the wrong tree, and you LD_LIBRARY_PATH is not the
source of your problem. Still, the ldd output tells us that you IMAP.so
is neither linked to BDB nor to SASL.

> 
> I have no idea what is going on in here, the only thing I can see is that
it
> searches /lib before /usr/lib in the first case, and /usr/lib first in the
> second case, but never seems to make it to both in either case? i.e. if it
> doesn't find it in the first search path, it never searches anywhere else,
> just gives up? I dunn o, just guessing at this point.

Right. The first hit terminates the search. For our Solaris 8 machines, /lib
is a symlink to /usr/lib, and I suspect it's the same for Sol 9. So it does
not matter which path ld.so follows. I was hoping to see whether your
LD_LIBRARY_PATH somehow corrupts the search for BDB/SASL. As those are
not linked at all, I don't see anything.

> 
> It may be worth noting as well that when I first built the entire package,
> issued the following:
> 
> ./configure --with-auth=unix --with-sasl=/usr/local/lib/sasl2
> --with-dbdir=/usr/local/BerkeleyDB.4.2 --without-openssl
> 
> I don't need openssl support at this time, and possibly I need to point
this
> build to the location of Berkeley, as in configure? Note that the server
is
> up and running (at least it appears as though) fine, I can send and
receive
> mail to the default domain, but I cannot create mailboxes for virtual
> domains.

You have a point there. I examined Makefile.PL and noticed that linking
instructions for SASL/BDB/... are taken from the environment. Set up your
environment like this (note the line continuations):

SASL_LIB='-L/usr/local/lib/sasl2 -R/usr/local/lib/sasl2 -lsasl2' \
BDB_LIB='-L/usr/local/BerkeleyDB.4.2 -R/usr/local/BerkeleyDB.4.2 -ldb-4.2' \
LIB_RT='-lrt' \
perl Makefile.PL

You won't need LD_OPTIONS with this approach. Make and call ldd (without the
-s) on the IMAP.so, and it should list librt, libsasl2, libdb-4.2 . If it
does then you should have no more linking problems.

> 
> Thank you so much for your help.

You're welcome,

   Ralph Rößner

-- 
   Ralph Rößner                                      TU Darmstadt
   EMail: roessner at rbg.informatik.tu-darmstadt.de    FB Informatik
---
Cyrus Home Page: http://asg.web.cmu.edu/cyrus
Cyrus Wiki/FAQ: http://cyruswiki.andrew.cmu.edu
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html


---
Cyrus Home Page: http://asg.web.cmu.edu/cyrus
Cyrus Wiki/FAQ: http://cyruswiki.andrew.cmu.edu
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html




More information about the Info-cyrus mailing list