On Sat, Jul 23, 2005 at 11:46:19PM -0700, Michael G Schwern wrote:
> MakeMaker's find_perl() function fails to find ponie.  The reason is its
> attempt to run ponie fails.  The run is simply:
> 
>       my $check = `$path_to_ponie -le "require 5.0; print qq{VER_OK}"`
> 
> when called inside find_perl nothing is returned.  But this appears to happen
> intermitantly.  To reproduce, download a copy of the ExtUtils-MakeMaker
> distribution.  Run "ponie Makefile.PL verbose verbose".  You'll see among
> the output:
> 
> Checking /path/to/your/bin/ponie
> Executing /path/to/your/bin/ponie
> Result: ''
> 
> $? >> 8 at that point is 66 (?!).
> 
> This appears to only happen in the MakeMaker distribution.  Makefile.PLs for
> other distributions work fine.

This seems to be a parrot bug of some sort. MM_Unix is running that test with
STDERR closed. Parrot fails to initialise if stderr is closed:

$ ./parrot examples/assembly/hello.pasm
Hello World
$ ./parrot examples/assembly/hello.pasm 2>&-  
$ echo $?
66

( 2>&- closes stderr )

Exit code (again) is 66.

I don't know why parrot's implementation is currently like this, or what the
correct fix should be.

Nicholas Clark

Reply via email to