Zenkyoki has asked for the wisdom of the Perl Monks concerning the following question:

Esteemed Monks, I've been using a script at work where I use ActivePerl build 5.8.3 on a Windows 2000 Professional SP4 box. The script runs fine; my issue is that when I use the same script at home where I run XP and the same build of ActivePerl, the script hangs up. As a test I sent it to a friend who ran it on his Mac with Perl 5.8.1; the script ran with no problem on his machine too. Any idea why this would happen? Profoundly greatful, Brandon

Replies are listed 'Best First'.
Re: Perl Interpreter / OS problem
by Corion (Patriarch) on Aug 26, 2004 at 12:38 UTC

    My guess is, that the problem comes from how the script interacts with the environment.

    Seriously, with the very scant amount of detail you provide, it could either be that the atomic influx regulator isn't working, the blinker fluid has become stale, or the USB driver for the dilithium resonators isn't installed properly on one machine.

    So you could either fix these problems or maybe post some code, and/or some more specific description of what relevant things your program does. Even better would be if you cut away as much as possible of your script and posted a 10 line script that exhibits the behaviour. See also How (not) to ask a question?.

      All of the appropriate modules are installed on both machines. Excerpt of the code where it hangs up:
      #perl.exe use strict; $|++; use WWW::Mechanize; my %seen; my $scraper = WWW::Mechanize->new(); my $mech = WWW::Mechanize->new(); my $home = <STDIN>; &main($home); sub main { my $line = shift; $scraper->get($line); my @LinkArray = $scraper->find_all_links(); if (defined @LinkArray){ my @urls = map { $_->[0]} @LinkArray; shift @urls if $seen{$line}++; foreach my $url(@urls){ print "\n", $url; ++$index_level; $scraper->get($url); next if $seen{$url}++; &followlink($url); } my $dest = shift @PublicLinks; &main($dest); return; }else{ return; } }
      It gives me an "Cannot Pass an unidentified VALUE to an Array" error.
        Hi,
        If u r using XP home, Active Perl tries to configure .pl and .plx (to perl.exe ) for IIS which donot exist on XP home.May be becuase of this the Active Perl May not have got installed correctly . So , can u pls download perl source and built the perl on ur XP machine and try it !
        hope this helps !
        All Monks Pls correct me , if iam wrong .
        regards,
        Swaroop
Re: Perl Interpreter / OS problem
by Grygonos (Chaplain) on Aug 26, 2004 at 12:37 UTC

    Perhaps your home machine is missing am module used in the script? It's really difficult to say without seeing the code though.