problems installing libwww-perl on cygwin

Steve Kelem s_kelem@pacbell.net
Thu Jan 11 16:47:00 GMT 2001


It was suggested that I direct this message to the Cygwin group.

I have downloaded the latest Cygwin and the latest perl compiled for 
cygwin.  I'm trying to build the libwww-perl-5.48 module and running 
into a strange problem during "make test".  Perl just hangs while 
executing a perfectly normal statement, both inside and outside the perl 
debugger.

Thanks for your help,
Steve Kelem

Subject: Re: problems installing libwww-perl
Date: Wed, 27 Dec 2000 12:15:39 -0800
From: Steve Kelem <s_kelem@pacbell.net>
Organization: SBC Internet Services
Newsgroups: comp.lang.perl.modules
References: <TU9Y5.3380$9B.97722@news1.oke.nextra.no>

I'm having the same problem with libwww-perl-5.48.  I have perl 5.6.0,
compiled for cygwin under Win NT 4.0 SP6a.  It builds ok, but fails in
the test rules-dbm by just hanging.

Here's the debug output:
{KELEM:kelem:228} perl -d -I../.. -I../../lib rules-dbm.t
Default die handler restored.

Loading DB routines from perl5db.pl version 1.07
Editor support available.

Enter h or `h h' for help, or `man perldebug' for more help.

main::(rules-dbm.t:2):  print "1..13\n";
    DB<1> s
1..13
main::(rules-dbm.t:7):  $file = "test-$$";
    DB<1>
main::(rules-dbm.t:9):  $r = new WWW::RobotRules::AnyDBM_File
"myrobot/2.0", $file;
    DB<1>
WWW::RobotRules::AnyDBM_File::new(../../lib/WWW/RobotRules/AnyDBM_File.pm:45):
45:       my ($class, $ua, $file) = @_;
    DB<1> n
WWW::RobotRules::AnyDBM_File::new(../../lib/WWW/RobotRules/AnyDBM_File.pm:46):
46:       Carp::croak('WWW::RobotRules::AnyDBM_File filename required')
unless $file;
    DB<1>
WWW::RobotRules::AnyDBM_File::new(../../lib/WWW/RobotRules/AnyDBM_File.pm:48):
48:       my $self = bless { }, $class;
    DB<1>
WWW::RobotRules::AnyDBM_File::new(../../lib/WWW/RobotRules/AnyDBM_File.pm:49):
49:       $self->{'filename'} = $file;
    DB<1>
WWW::RobotRules::AnyDBM_File::new(../../lib/WWW/RobotRules/AnyDBM_File.pm:50):
50:       tie %{$self->{'dbm'}}, 'AnyDBM_File', $file, O_CREAT|O_RDWR, 0640
51:         or Carp::croak("Can't open $file: $!");
    DB<1>
WWW::RobotRules::AnyDBM_File::new(../../lib/WWW/RobotRules/AnyDBM_File.pm:50):
50:       tie %{$self->{'dbm'}}, 'AnyDBM_File', $file, O_CREAT|O_RDWR, 0640
51:         or Carp::croak("Can't open $file: $!");
    DB<1>
WWW::RobotRules::AnyDBM_File::new(../../lib/WWW/RobotRules/AnyDBM_File.pm:53):
53:       if ($ua) {
    DB<1>
WWW::RobotRules::AnyDBM_File::new(../../lib/WWW/RobotRules/AnyDBM_File.pm:54):
54:           $self->agent($ua);
    DB<1> s
WWW::RobotRules::AnyDBM_File::agent(../../lib/WWW/RobotRules/AnyDBM_File.pm:65):

65:         my($self, $newname) = @_;
    DB<1> n
WWW::RobotRules::AnyDBM_File::agent(../../lib/WWW/RobotRules/AnyDBM_File.pm:66):

66:         my $old = $self->{'dbm'}{"|ua-name|"};
    DB<1> p $self
WWW::RobotRules::AnyDBM_File=HASH(0xa26a130)
    DB<2> p %{$self}
filenametest-314dbmHASH(0xa2e19b4)
    DB<3> n
WWW::RobotRules::AnyDBM_File::agent(../../lib/WWW/RobotRules/AnyDBM_File.pm:67):

67:         if (defined $newname) {
    DB<3>
WWW::RobotRules::AnyDBM_File::agent(../../lib/WWW/RobotRules/AnyDBM_File.pm:68):

68:             $newname =~ s!/?\s*\d+.\d+\s*$!!;  # loose version
    DB<3> p $newname
myrobot/2.0
    DB<4>
WWW::RobotRules::AnyDBM_File::agent(../../lib/WWW/RobotRules/AnyDBM_File.pm:69):

69:             unless ($old && $old eq $newname) {
    DB<4> p $newname
myrobot
    DB<5> p $old

    DB<6>
WWW::RobotRules::AnyDBM_File::agent(../../lib/WWW/RobotRules/AnyDBM_File.pm:71):

71:                 my $file = $self->{'filename'};
    DB<6>
WWW::RobotRules::AnyDBM_File::agent(../../lib/WWW/RobotRules/AnyDBM_File.pm:72):

72:                 untie %{$self->{'dbm'}};
    DB<6>
WWW::RobotRules::AnyDBM_File::agent(../../lib/WWW/RobotRules/AnyDBM_File.pm:72):

72:                 untie %{$self->{'dbm'}};
    DB<6>
WWW::RobotRules::AnyDBM_File::agent(../../lib/WWW/RobotRules/AnyDBM_File.pm:73):

73:                 tie %{$self->{'dbm'}}, 'AnyDBM_File', $file,
O_TRUNC|O_RDWR, 0640;
    DB<6> s
WWW::RobotRules::AnyDBM_File::agent(../../lib/WWW/RobotRules/AnyDBM_File.pm:73):

73:                 tie %{$self->{'dbm'}}, 'AnyDBM_File', $file,
O_TRUNC|O_RDWR, 0640;
    DB<6>
Fcntl::AUTOLOAD(/usr/local/lib/perl5/5.6.0/cygwin/Fcntl.pm:203):
203:        (my $constname = $AUTOLOAD) =~ s/.*:://;
    DB<6> n
Fcntl::AUTOLOAD(/usr/local/lib/perl5/5.6.0/cygwin/Fcntl.pm:204):
204:        my $val = constant($constname, 0);
    DB<6>
Fcntl::AUTOLOAD(/usr/local/lib/perl5/5.6.0/cygwin/Fcntl.pm:205):
205:        if ($! != 0) {
    DB<6>
Fcntl::AUTOLOAD(/usr/local/lib/perl5/5.6.0/cygwin/Fcntl.pm:216):
216:        *$AUTOLOAD = sub { $val };
    DB<6>
Fcntl::AUTOLOAD(/usr/local/lib/perl5/5.6.0/cygwin/Fcntl.pm:217):
217:        goto &$AUTOLOAD;
    DB<6>
Fcntl::__ANON__[/usr/local/lib/perl5/5.6.0/cygwin/Fcntl.pm:216](/usr/local/lib/perl5/5.6.0/cygwin/Fcntl.pm:216):
216:        *$AUTOLOAD = sub { $val };
    DB<6>
Fcntl::CODE(0xa2e19f0)(/usr/local/lib/perl5/5.6.0/cygwin/Fcntl.pm:216):
216:        *$AUTOLOAD = sub { $val };
    DB<6>
WWW::RobotRules::AnyDBM_File::agent(../../lib/WWW/RobotRules/AnyDBM_File.pm:74):

74:                 $self->{'dbm'}{"|ua-name|"} = $newname;
    DB<6> p $newname
myrobot
    DB<7> s
*** At this point, it hangs.  I have to use Win NT's Task Manager to
kill the perl task.

Thanks for your help,
Steve Kelem


More information about the Cygwin mailing list