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