Cyradm - error with db_version. Tested on FC2
KL
kjetil at laasby.com
Mon Sep 6 16:49:00 EDT 2004
Hi !
I've read alot of messages regarding the error with cyrus-imapd cyradm command, and seldom any good replies.
I've composed a quick workaround tested on Fedora Core 2.
---
[root at kevlar imap]# cyradm
Can't load '/usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi/auto/Cyrus/IMAP/IMAP.so' for module Cyrus::IMAP: /usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi/auto/Cyrus/IMAP/IMAP.so: undefined symbol: db_version at /usr/lib/perl5/5.8.3/i386-linux-thread-multi/DynaLoader.pm line 229.
at /usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi/Cyrus/IMAP/Admin.pm line 44
Compilation failed in require at /usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi/Cyrus/IMAP/Admin.pm line 44.
BEGIN failed--compilation aborted at /usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi/Cyrus/IMAP/Admin.pm line 44.
Compilation failed in require at /usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi/Cyrus/IMAP/Shell.pm line 60.
BEGIN failed--compilation aborted at /usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi/Cyrus/IMAP/Shell.pm line 60.
Compilation failed in require.
BEGIN failed--compilation aborted.
--
For me, an upgraded Fedora Core 2 installation also caused this error..
I finally found a solution from "Victor" here :
http://asg.web.cmu.edu/archive/message.php?mailbox=archive.info-cyrus&msg=30493
But since my customer requires to use RPMs, I had to make a little hack. From a basic install,
I only downloaded the same source as the Fedora RPM, and went into the perl/imap directory.
I changed the lines in Makefile.PL as Victor says in his post.
---
my $SASL_LIB = $ENV{SASL_LIB} || "-lsasl2"; with
my $SASL_LIB = $ENV{SASL_LIB} || "-lsasl2 -ldb"; and then recomplile.
---
Went back to the root folder of imapd and did a ./configure && make.
Went into perl/imap and did a make install.
For some reason I didn't bother to investigate, the FC2 RPM puts its IMAP.so file in 5.8.0. I then
copied the installed files from the 5.8.3 tree back to 5.8.0 tree.
---
cp /usr/local/lib/perl5/site_perl/5.8.3/i386-linux-thread-multi/auto/Cyrus/IMAP/IMAP.* /usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi/auto/Cyrus/IMAP/
---
(..or you can copy from the perl/imap dir).
Then I ran "cyradm" command :
[root at kevlar imap]# cyradm
cyradm>
Thanks to Victor (!)- and hopes this helpes frustrated Fedora/Redhat/SuSE ++ people.
My to cents,
Regards,
K of Norway.
--
Mvh,
Kjetil Laasby
---
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