From: demerphq
Sent: Friday, July 18, 2014 7:40 AM
> The above shows what goes wrong. Makemaker decides that PERL_LIB is
> "../../../../" instead of
> "/home/yorton/perl5/perlbrew/perls/perl-5.14.4/lib/5.14.4"
>
> below is the diff of the two Makefiles, but the relevant part is as
> follows:
>
> -PERL_LIB = /home/yorton/perl5/perlbrew/perls/perl-5.14.4/lib/5.14.4
> -PERL_ARCHLIB =
> /home/yorton/perl5/perlbrew/perls/perl-5.14.4/lib/5.14.4/x86_64-linux
> +PERL_LIB = ../../../../lib
> +PERL_ARCHLIB = ../../../../lib
>
> I am guessing that MakerMaker decides that is being used as part of
> building perl, and that it should use it as the location for its header
> files. I know there is special logic in MakeMaker for this kind of
> purpose.
I didn't know that.
If we could get a handle on precisely how to detect that this problem might
arise, then we could probably have Inline issue a warning that "things might
go awry, and if they do then you should move the script to a different
(sane) location".
I tried running your demo script on Windows (as
try.pl) in
C:/git_tree/perl/Porting with perl-5.14.0, EU-MM-6.62 and it still worked
fine for me.
Might there be a perlbrew component to this issue ? (I'm not at all familiar
with perlbrew. I just build my perls the old fashioned way and call them via
different shell/batch scripts.)
I see that you're running EU-MM-6.57_05. If you think it's worth the effort
I guess you could see if updating to EU-MM-6.62 fixes the problem - or do
any other digging you think might be productive. (It's actually a bit
interesting.)
Otherwise we can just settle for the "Don't do that" solution ;-)
Cheers,
Rob