Jump to content

GNU Libtool: Difference between revisions

From Niidae Wiki
imported>HouseBlaster
rmv deleted portal
 
(No difference)

Latest revision as of 04:45, 26 December 2024

Template:Short description Template:More citations needed

Template:Infobox software

GNU Libtool is a software development tool, part of the GNU build system, consisting of a shell script<ref name="libtool is a shell script">Template:Cite book</ref> created to address the software portability problem when compiling shared libraries from source code. It hides the differences between computing platforms for the commands which compile shared libraries.<ref name="libtool: portability via abstraction">Template:Cite book</ref> It provides a command-line interface that is identical across platforms and it executes the platform's native commands.

Rationale

[edit]

Different operating systems handle shared libraries differently. Some platforms do not use shared libraries at all. It can be difficult to make a software program portable: the C compiler differs from system to system; certain library functions are missing on some systems; header files may have different names.

Libtool helps manage the creation of static and dynamic libraries on various Unix-like operating systems. Libtool accomplishes this by abstracting the library-creation process, hiding differences between various systems (e.g. Linux systems vs. Solaris).

GNU Libtool is designed to simplify the process of compiling a computer program on a new system, by "encapsulating both the platform-specific dependencies, and the user interface, in a single script". <ref name="Libtool manual">Libtool Manual</ref> When porting a program to a new system, Libtool is designed so the porter need not read low-level documentation for the shared libraries to be built, rather just run a configure script (or equivalent). <ref name="Libtool manual" />

Use

[edit]

Libtool is used by Autoconf and Automake, two other portability tools in the GNU build system. It can also be used directly. <ref name="automake uses libtool">Template:Cite book</ref>

Clones and derivatives

[edit]

Since GNU Libtool was released, other free software projects have created drop-in replacements under different software licenses.<ref name="BSD-licensed libtool">BSD-licensed libtool.</ref> slibtool is one such implementation.<ref>Template:Cite web</ref>

See also

[edit]

Template:Portal

References

[edit]

Template:Reflist

[edit]

Template:GNU Template:Portal bar