develooper Front page | perl.win32.vanilla | Postings from October 2011

Config{libpth} substitution problem

Thread Next
From:
Dmitry Karasik
Date:
October 31, 2011 03:19
Subject:
Config{libpth} substitution problem
Message ID:
20111031101904.GA57778@tetsuo.karasik.eu.org
Hello,

I have I problem with building Prima on strawberry 5.12.3, which appears when I use
Strawberry installed in something other than c:/strawberry directory. The problem
didn't re-appear cleanly when I tried to take a clean vmware box, and install it there,
so I'm not 100% sure how to reproduce it. However a Prima user send that bug to me,
so there's something wrong not only on my machine.

The problem is as such: Prima needs libgdi32.a, which is not found because $Config{libpth}
doesn't contain the path to it (it's in c:/somewhere_else/c/i686-w64-mingw32/lib ). However in Config.pm
there is this line:

    libpth => 'C:\\strawberry\\c\\lib C:\\strawberry\\c\\i686-w64-mingw32\\lib',

which seems valid, but if I call either 'perl -V:libpth' or 'perl -MConfig -le "print $Config{libpth}"
I get printed

    c:\somewhere_else\c\lib

only. Some substitution gone wrong. To test this further I've temporarily removed Config.pm to see if some
other Config.pm gets picked, - no, it wasn't. Next, I've hacked a copy of Config.pm into Config2.pm (and renamed
it inside), and unsurprisingly, calling 'perl -MConfig2 -le "print $Config{libpth}' yielded just that
unsubstituted line:

   C:\strawberry\c\lib C:\strawberry\c\i686-w64-mingw32\lib

I tried to find where the substitution magic is executed to see if the problem is indeed there, but couldn't
find where it gets done. 

So I'll need your help here. If anyone can confirm that (and when) $Config{libpth} gets hacked, or point me
to the code where the magic is done, that'd be really appreciated.

-- 
Sincerely,
	Dmitry Karasik


Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About