PPM downloads package but throws error when installing

Posted by AlisonRose on 2007-02-14 07:31
Forums: PPM | OS: Windows Server 2003


I have installed ActivePerl- onto a Windows 2003 server SP1 with Microsoft security base line policies applied. When I try to install the packages through PPM, the following is thrown:

ppm> install date-calc
Install 'Carp-Clan' version 5.8 in ActivePerl
Downloaded 741 bytes.
Couldn't read chunk at offset unknown at D:/Perl/site/lib/PPM/Archive/Tar.pm lin
e 25
Error: Can't call method "is_label" on an undefined value at
D:/Perl/site/lib/Archive/Tar.pm line 282.

Does anyone know how to resolve this problem?

If you need any further information, please say.

I look forward to hearing from you!
Many thanks.

ActiveState Staff
Wed, 2007-02-14 13:22

Hello Alison,

It looks like the package for Carp::Clan was too small -- it's far larger than 742 bytes. The remainder of the errors are normal when a package is truncated like that. I believe PPM 4 (as shipped with the latest ActivePerl, is far friendlier in that case.

I can't reproduce this (using on Windows XP Pro SP2, patched to current), so I'm guessing it was a transient issue. Here are my recommendations:

- retry the installation
- or uninstall and install, as PPM 4 in 820 logs more information and may help track down the source of the problem if it keeps up



jessica_hynes | Thu, 2007-07-12 21:06

I am getting this error...but couldnt understand if any firewall is there...
I am going to post the Tar.pm which I have...Please send me updated file if you have

package PPM::Archive::Tar;

use strict;
use Archive::Tar;
use base qw(PPM::Archive);

sub is_gzipped {
my $o = shift;
return $o->{file} =~ /\.gz$/i

#sub is_bzipped {
# my $o = shift;
# return $o->{file} =~ /\.bz(?:ip)?2$/;

sub load {
my $o = shift;
my $f = $o->{file};
# if ($o->is_bzipped) {
# require Compress::Bzip2;
# $o->{archive} = Archive::Tar::->new($f);
# }
# else {
$o->{archive} = Archive::Tar::->new($f, $o->is_gzipped);
# }

sub list_files {
my $o = shift;

sub extract {
my $o = shift;
my $f = shift;




AlisonRose | Thu, 2007-02-15 07:44

Thank you for your prompt response kjw.

It was found to be a firewall problem in the end. I installed an older version of perl which gave me a more meaningful error message when I tried to download the ppm packages. We've resolved this.

So what is the the difference between and 820? Is it just a better version of PPM? I will try this version when I get a chance to test it with Oracle 10g and all of our applications.

Many thanks again, Alison

ActiveState Staff
Mon, 2007-03-12 12:25

Hi Alison,

There are several differences between and 820. A number of fixed bugs, some upgrades to the core modules, and as you noticed, a new major version of PPM. It's definitely worth the upgrade.