Skip Menu |

This queue is for tickets about the IO-Compress-Base CPAN distribution.

Report information
The Basics
Id: 36816
Status: resolved
Priority: 0/
Queue: IO-Compress-Base

People
Owner: Nobody in particular
Requestors: toddr [...] cpanel.net
Cc:
AdminCc:

Bug Information
Severity: Critical
Broken in: 2.011
Fixed in: (no value)



Subject: IO-Compress-Base breaks after install. cpan 100% non-functional
1. I installed strawberry perl clean in Windows XP 2. I ran CPAN 3. install File::GlobMapper 4. Exit cpan 5. go back into cpan and try to install any module: Show quoted text
cpan> install App::Prove
Database was generated on Tue, 17 Jun 2008 04:59:23 GMT Running install for module 'App::Prove' Running make for A/AN/ANDYA/Test-Harness-3.11.tar.gz Catching error: 'Can\'t call method "value" on an undefined value at C:\\strawberry\\perl\\site\\lib/IO/Uncompress/RawInflate.pm line 64. ' at C:/strawberry/perl/lib/CPAN.pm line 281 CPAN::shell() called at C:\strawberry\perl\bin/cpan line 195
On Tue Jun 17 01:11:05 2008, todd_rinaldo wrote: Show quoted text
> 1. I installed strawberry perl clean in Windows XP > 2. I ran CPAN > 3. install File::GlobMapper > 4. Exit cpan > 5. go back into cpan and try to install any module: >
> cpan> install App::Prove
> Database was generated on Tue, 17 Jun 2008 04:59:23 GMT > Running install for module 'App::Prove' > Running make for A/AN/ANDYA/Test-Harness-3.11.tar.gz > Catching error: 'Can\'t call method "value" on an undefined value at > C:\\strawberry\\perl\\site\\lib/IO/Uncompress/RawInflate.pm line 64. > ' at C:/strawberry/perl/lib/CPAN.pm line 281 > CPAN::shell() called at C:\strawberry\perl\bin/cpan line 195
File::GlobMapper is part of IO-Compress-Base and IO-Uncompress- RawInflate uses IO-Compress-Base. So I'm guessing that by installing a new version of File::GlobMapper you have installed a version of IO-Compress-Base that is incompatible with the IO-Uncompress-RawInflate on your system. Can you run this script to see what versions of the modules you actually have please? my @modules = qw( File::GlobMapper IO::Compress::Base IO::Uncompress::Base IO::Compress::RawDeflate IO::Uncompress::RawInflate IO::Compress::Gzip IO::Uncompress::Gunzip ); my $max = 0; grep { $max = $_ if $_ > $max } map { length $_ } @modules; for my $name (@modules) { printf("%-${max}s ", $name); eval "require $name;"; if ($@ eq '') { my $version = ${ $name . "::VERSION" }; print "$version\n"; } else { print "Not Present\n"; } }
From: todd.e.rinaldo [...] jpmorgan.com
File::GlobMapper 0.000_02 IO::Compress::Base 2.008 IO::Uncompress::Base 2.008 IO::Compress::RawDeflate 2.008 IO::Uncompress::RawInflate 2.008 IO::Compress::Gzip 2.008 IO::Uncompress::Gunzip 2.008
From: todd.e.rinaldo [...] jpmorgan.com
Also please note, it seems there is a circular dependancy then? C:\strawberry\cpan\build\IO-Compress-Zlib-2.011-weAAPt>perl Makefile.PL Up/Downgrade not needed. Warning: prerequisite Compress::Raw::Zlib 2.011 not found. We have 2.008. Warning: prerequisite IO::Compress::Base 2.011 not found. We have 2.008. Warning: prerequisite IO::Compress::Bzip2 2.011 not found. We have 2.008. Warning: prerequisite IO::Uncompress::Base 2.011 not found. We have 2.008. Warning: prerequisite IO::Uncompress::Bunzip2 2.011 not found. We have 2.008. Writing Makefile for IO::Compress::Zlib
On Fri Jun 20 10:40:44 2008, todd_rinaldo wrote: Show quoted text
> Also please note, it seems there is a circular dependancy then? > > C:\strawberry\cpan\build\IO-Compress-Zlib-2.011-weAAPt>perl Makefile.PL > Up/Downgrade not needed. > Warning: prerequisite Compress::Raw::Zlib 2.011 not found. We have > 2.008. > Warning: prerequisite IO::Compress::Base 2.011 not found. We have 2.008. > Warning: prerequisite IO::Compress::Bzip2 2.011 not found. We have > 2.008. > Warning: prerequisite IO::Uncompress::Base 2.011 not found. We have > 2.008. > Warning: prerequisite IO::Uncompress::Bunzip2 2.011 not found. We have > 2.008. > Writing Makefile for IO::Compress::Zlib
No, there isn't. Try installing in this order Compress-Raw-Zlib Compress-Raw-Bzip2 IO-Compress-Base IO-Compress-Bzip2 IO-Compress-Zlib Paul
From: todd.e.rinaldo [...] jpmorgan.com
Thanks for the suggestion.. Now Compress-Raw-Zlib is failing to compile. So it appears we have a version dependancy issue not being included in "some" makefile.pl. Is it yours or someone else's that we need to make sure is updated?
On Thu Jun 26 11:36:38 2008, todd_rinaldo wrote: Show quoted text
> Thanks for the suggestion.. > Now Compress-Raw-Zlib is failing to compile. So it appears we have a > version dependancy issue not being included in "some" makefile.pl. Is > it yours or someone else's that we need to make sure is updated?
What does the failure look like? Compress-Raw-Zlib doesn't have dependencies on other modules. Are you installing this with the cpan shell or are you running the build by hand? There used to be an issue on cygwin with the compress- zlib module (this was before the C part got moved to compress-raw-zlib) because the cpan shell used compress-zlib itself, and it didn't appreciate the version changing while it was running. If you aren't already, can you try building the modules the old- fashioned way? perl Makefile.PL make test install Paul
From: todd.e.rinaldo [...] jpmorgan.com
AARGH! So I did a process explorer and killed all rogue perl programs. One was holding open zlib.dll. Once I did this, it all compiled and installed. So I'm working right now. FYI, I'm using the latest Strawberry perl for 5.10.0 Thanks for the help.
From: todd.e.rinaldo [...] jpmorgan.com
I'm still curious though, the current version of IO::Compress::Base seems to have a dependancy on the latest version of Zlib?
On Thu Jun 26 20:01:15 2008, todd_rinaldo wrote: Show quoted text
> I'm still curious though, the current version of IO::Compress::Base > seems to have a dependancy on the latest version of Zlib?
Good to hear you got it working. There isn't a dependency between IO::Compress::Base and Compress::Raw::Zlib, but there is one between IO-Compress-Zlib and Compress::Raw::Zlib. Paul
From: todd.e.rinaldo [...] jpmorgan.com
Thanks, Please close the ticket for now. Let's call this a red herring.