[KLUG Members] Can't locate Cyrus/IMAP/Shell.pm in @INC

Adam Williams members@kalamazoolinux.org
19 Jan 2003 19:07:50 -0500


>First, mega thanks to Adam's sendmail PDF and pointers in the right

Cool, someone actually uses those things!

>direction by RGB. I have my penguindude.com domain running entirely on my
>box at home now.
>Not that there's anything wrong with pine, 

Oh no, of course not. (cough)

>but I'd like to get IMAP going
>so things like webmail and a gui client are more feasible. I *think* I
>have cyrus up and running. At least the messages log appears to show it
>working and I can telnet to port 143 and get info about it. However, I
>can't seem to get cyradm to do anything for me. Example output:
># cyradm
>Can't locate Cyrus/IMAP/Shell.pm in @INC (@INC contains:
>/usr/lib/perl5/5.8.0/i386-linux-thread-multi /usr/lib/perl5/5.8.0
>/usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi
>/usr/lib/perl5/site_perl/5.8.0 /usr/lib/perl5/site_perl/5.6.1
>usr/lib/perl5/site_perl
>/usr/lib/perl5/vendor_perl/5.8.0/i386-linux-thread-multi
>/usr/lib/perl5/vendor_perl/5.8.0 /usr/lib/perl5/vendor_perl .).BEGIN failed--compilation aborted.

You may need to get the Shell.pm Perl module, via something like CPAN.

On RH8 though it looks to be included -
[awilliam@estate1 awilliam]$ rpm -qf /usr/lib/perl5/5.8.0/Shell.pm
perl-5.8.0-55

What version/distro are you using? 

>Argh! I did a google search and tried a couple of things that looked
>relevant (like copying the Cyrus/IMAP/ structure beneath
>/usr/lib/perl5/5.8.0), but to no avail.

Hmmm, I don't recall having to do anything like that.

Do you find the Shell module?

/usr/lib/perl5/5.8.0/Shell.pm
/usr/lib/perl5/vendor_perl/5.8.0/i386-linux-thread-multi/DBI/Shell.pm

Did I mention how much I hate perl?  Seems like everything I download
that uses perl puts me through a dreadful period of penance concerning
modules and include paths.  And none of them are ever clear about what
to do.  I do remember having to wrestle with cyradm/perl until I managed
to touch its hip.  Unfortunately I didn't write down exactly how I
solved it, other than the comment "typical perl hell".

>Also, if I want an existing user on my server to have an IMAP mailbox,
>will I still need to "cyradm --user username" for them? I'm guessing yes.

You'll need to create a "user.{username}" mailbox via the cyrus
administrator account.  The user will never need to use cyradm, and
you'll never need to cyradm as a user other than administrator (although
you could).