require ExtUtils::Liblist;
ExtUtils::Liblist::ext($potential_libs, $Verbose);
This utility takes a list of libraries in the form
-llib1 -llib2
-llib3
and returns lines suitable for inclusion in a Perl
extension
Makefile
on the current platform. Extra library paths may be
included with the form
-L/another/path
. This will affect the
searches for all subsequent libraries.
ExtUtils::Liblist::ext()
returns a list of four scalar
values, which Makemaker will eventually use in constructing a
Makefile
, among other things. The values are:
-
EXTRALIBS
-
List of libraries that need to be linked with
ld
(1) when linking a
Perl binary that includes a static extension. Only those libraries that
actually exist are included.
-
LDLOADLIBS
-
List of those libraries that can or must be linked
when creating a shared library using
ld
(1). These may be static
or dynamic libraries.
-
LD_RUN_PATH
-
A colon-separated list of the
directories in
LDLOADLIBS
. It is passed as an environment variable
to the process that links the shared library.
-
BSLOADLIBS
-
List of those libraries that are needed but can be linked in dynamically
with the DynaLoader at run-time on this platform. This list is used to
create a
.bs
(bootstrap) file. SunOS/Solaris does not need
this because
ld
(1) records the information (from
LDLOADLIBS
)
into the object file.
This module deals with a lot of system dependencies and has quite a
few architecture-specific
if
s in the code.