develooper Front page | perl.perl5.porters | Postings from September 2011

Re: [ #69318] EU:MM rejects necessary link library

Thread Previous | Thread Next
Nicholas Clark
September 28, 2011 04:04
Re: [ #69318] EU:MM rejects necessary link library
Message ID:
On Wed, Sep 28, 2011 at 05:56:30AM -0400, Christian Walde via RT wrote:
> <URL: >
> Weird, RT didn't mail me your last reply. Anyhow:
> Note ahead: I know almost nothing about C. It's been almost a decade 
> since i last wrote a C program.
> > I think the general way to accomplish that is to just try to compile a
> > small program.  Isn't that what Configure does?
> No idea. Completely outside of my expertise.
> > I wonder if delegating to ExtUtils::CBuilder would be sufficient.  I'd
> > love to see all that nasty Liblist code go away.
> Again, I have no idea and do not know the module. Though, casual 
> looking reveals:
> "However, it is not intended as a general cross-platform interface to 
> all your C building needs."
> > Alternatively... do we need to go through that process at all?
> Good question! Why indeed. I personally have no clue why that is 
> necessary. I can only guess at it being meant to make it possible for 
> authors to indicate multiple libraries with EUMM choosing the one that 
> actually exists.
> But that's a wild guess.

Which corresponds to the actual documentation:

=item LIBS

An anonymous array of alternative library
specifications to be searched for (in order) until
at least one library is found. E.g.

  'LIBS' => ["-lgdbm", "-ldbm -lfoo", "-L/path -ldbm.nfs"]

Mind, that any element of the array
contains a complete set of arguments for the ld
command. So do not specify

  'LIBS' => ["-ltcl", "-ltk", "-lX11"]

See ODBM_File/Makefile.PL for an example, where an array is needed. If
you specify a scalar as in

  'LIBS' => "-ltcl -ltk -lX11"

MakeMaker will turn it into an array with one element.


Nicholas Clark

Thread Previous | Thread Next Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at | Group listing | About