Skip Menu |

This queue is for tickets about the ExtUtils-MakeMaker CPAN distribution.

Report information
The Basics
Id: 49026
Status: resolved
Worked: 5 min
Priority: 0/
Queue: ExtUtils-MakeMaker

People
Owner: Nobody in particular
Requestors: salva [...] cpan.org
schroeer [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: Important
Broken in: 6.54
Fixed in: 6.66



Subject: Can't find libraries ending in .lib from Strawberry Perl
ExtUtils::Liblist::Kid::_win32_ext only looks for library files ending in $Config{lib_ext} that depending on the compiler used to compile perl (VC or GCC) could be .a or .lib. AFAIK it is possible to use libraries inside programs or modules compiled with a different compiler, so the current library search logic doesn't make sense. _win32_ext should look for libraries ending in both .a and .lib As a real case, see this thread in Perlmonks: http://perlmonks.org/?node_id=791341 The user is trying to compile Language::Prolog::Yaswi under Strawberry Perl. The module tries to link with SWI-Prolog library but it fails because that package is compiled with a different compiler. At a minimum it should be possible to set the desired library extension from Makefile.PL Changing inside _win32_ext $_ .= $libext if !/\Q$libext\E$/i; to $_ .= $libext if !/(?:\Q$libext\E|\.lib|\.a)$/i;
SALVA wrote: Show quoted text
> Changing inside _win32_ext > > $_ .= $libext if !/\Q$libext\E$/i; > > to > > $_ .= $libext if !/(?:\Q$libext\E|\.lib|\.a)$/i;
I am having the same problem when compiling Lab-VISA-2.03 on Strawberry Perl. I think this is a major issue in ExtUtils::MakeMaker and should be fixed soon. The proposed patch solves the problem for me. This change is maybe not very beautiful but the entire code in Kid.pm isn't.
I believe that this has been resolved from looking through the Changes, since v6.66 Many thanks.