I found this thread after getting a similar error message about /usr/share/perl5/IO/Uncompress/RawInflate.pm, but lack of "make" wasn't my problem.
I built Perl 5.10.0 from source, installed it under /opt/local, and put /opt/local/bin at the front of my $PATH. Perl -V says my @INC is:
/opt/local/lib/perl5/5.10.0/i686-linux
/opt/local/lib/perl5/5.10.0
/opt/local/lib/perl5/site_perl/5.10.0/i686-linux
/opt/local/lib/perl5/site_perl/5.10.0
.
Yet I was still seeing this error when working in the CPAN shell:
Can't call method "value" on an undefined value at /usr/share/perl5/IO
+/Uncompress/RawInflate.pm line 64.
/usr/share/perl5 ? I didn't ask for that (or maybe I inadvertently did by running "Configure -de" when I built it).
My kludge was to block Perl from even trying to look at /usr/share/perl5:
chmod 0000 /usr/share/perl5 && perl -MCPAN -eshell && chmod 0755 /usr/
+share/perl5
This was only necessary once. CPAN.pm learned its lesson and is now looking in the "correct" place for IO::Uncompress::RawInflate.
Update 5/1/2009: Scratch most of the above. It wasn't Perl 5.10's fault!
It was a PATH problem. Though /opt/local/bin was in my PATH as a 'normal' user, it wasn't under sudo (in some cases), so I was actually using the system Perl without knowing it:
% perl -v
This is perl, v5.10.0 (GitLive-maint-5.10-1091-g36d9847*) built for i6
+86-linux
[...]
% sudo perl -v
This is perl, v5.8.8 built for i486-linux-gnu-thread-multi
[...]
So the real fix is to be explicit:
% sudo /opt/local/bin/perl -MCPAN -eshell
|