Gabor Szabo wrote:
On Sat, Aug 9, 2008 at 1:22 PM, Paul Johnson <[EMAIL PROTECTED]> wrote:
On Sat, Aug 09, 2008 at 01:09:23PM +0300, Gabor Szabo wrote:
If I have the following code in a file called Makefile.PL
use FindBin;
print "$FindBin::Bin\n";
perl Makefile.PL prints
/home/gabor/work/pugs
no matter where the file is located.
If the file is called a.pl with the same content
it prints the correct directory as expected.
perl 5.8.8 on Ubuntu
perl -MFindBin -e'print $FindBin::VERSION' is 1.47
The only environment variable I can see containing pugs is PATH
I suspect you've fallen foul of the problem documented in the KNOWN BUGS
section of the documentation.
It looks like you are right.
Not so surprisingly I don't have an executable a.pl anywhere in my path but I
have such a Makefile.PL in the pugs directory.
(on more good reason for the CPANTS metric checking for *not* executable
Makefile.PL :-)
This is the reason I could not install CPANPLUS as first thing it does
in Makefile.PL it calls
chdir $FindBin::Bin
As an alternative:
use File::Spec::Functions 'rel2abs';
use File::Basename 'dirname';
chdir dirname( rel2abs( $0 ) );
Tom