Scroll to navigation

ExtUtils::LibBuilder(3pm) User Contributed Perl Documentation ExtUtils::LibBuilder(3pm)

NAME

ExtUtils::LibBuilder - A tool to build C libraries.

SYNOPSIS

    use ExtUtils::LibBuilder;
    my $libbuilder = ExtUtils::LibBuilder->new( %options );

METHODS

Supports all the method from ExtUtils::CBuilder. The following three methods were adapted to be used in standalone C libraries.

new

This method creates a new ExtUtils::LibBuilder object. While it supports all "ExtUtils::CBuilder" methods some might work slightly differently (namely the two below).

You can supply to the constructor any option recognized by "ExtUtils::CBuilder" constructor. None of them will be used by "LibBuilder".

   $libbuilder -> link( objects     => [ "foo.o", "bar.o" ],
                        module_name => "foobar",
                        lib_file    => "libfoobar$libbuilder->{libext}");

Options to the link method are the same as the "CBuilder" counterpart. Note that the result is a standalone C Library and not a bundle to be loaded by Perl.

Also, note that you can use the "libext" key to retrieve from the object the common library extension on the running system (including the dot).

  $libbuilder->link_executable( objects => ["main.o"],
                                extra_linker_flags => "-L. -lfoobar",
                                exe_file => "foobarcmd$libbuilder->{exeext}");

The "link_executable" needs, as "extra_linker_flags" options, the name of the library and the search path. Future versions might include better handling on the library files.

Also, note that you can use the "exeext" key to retrieve from the object the common executable extension on the running system (including the dot).

AUTHOR

Alberto Simoes, "<ambs at cpan.org>"

BUGS

Please report any bugs or feature requests to "bug-extutils-libbuilder at rt.cpan.org", or through the web interface at <http://rt.cpan.org/NoAuth/ReportBug.html?Queue=ExtUtils-LibBuilder>. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

SUPPORT

You can find documentation for this module with the perldoc command.

    perldoc ExtUtils::LibBuilder

You can also look for information at:

LICENSE AND COPYRIGHT

Copyright 2010 Alberto Simoes.

This program is free software; you can redistribute it and/or modify it under the terms of either: the GNU General Public License as published by the Free Software Foundation; or the Artistic License.

See http://dev.perl.org/licenses/ for more information.

2015-10-21 perl v5.40.0