Wednesday, 9 February 2011

CPAN problem with Compress::Zlib

Perl Version:  5.8.4 
Operating System: OpenIndiana oi_148
Error Message(s) seen:
Undefined subroutine &Compress::Zlib::gzopen called at /usr/perl5/5.8.4/lib/CPAN/ line 122

This error showed up while installing a module called Config::Crontab.  It potentially could have caused problems with installing any module though, as I'm pretty sure that it's down to missing dependencies for Compress::Zlib.

The error presented itself as follows:

 cpan[2]> install Config::Crontab
Running install for module 'Config::Crontab'
Running make for S/SC/SCOTTW/Config-Crontab-1.30.tar.gz
CPAN: LWP::UserAgent loaded ok (v5.835)
Fetching with LWP:
CPAN: Digest::SHA loaded ok (v5.50)
Fetching with LWP:
Catching error: "Undefined subroutine &Compress::Zlib::gzopen called at /usr/perl5/5.8.4/lib/CPAN/ line 122.\cJ" at /usr/perl5/5.8.4/lib/ line 391
    CPAN::shell() called at -e line 1

As this suggests a problem with Compress::Zlib, I tried to update it:
cpan[3]> install Compress::Zlib
Compress::Zlib is up to date (2.033).j

The solution was to remove Compress::Zlib and reinstall it, which then picked up missing dependencies and installed them:

root@ph_opensolaris:/root# ls /usr/perl5/site_perl/5.8.4/Compress/
root@ph_opensolaris:/root# rm /usr/perl5/site_perl/5.8.4/Compress/

cpan[1]> install Compress::Zlib

No comments: