GNU Libtool

In computer programming, GNU Libtool is a software development tool, part of the GNU build system, consisting of a shell script[3] 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.[4]It provides a command-line interface that is identical across platforms and it executes the platform's native commands.

GNU Libtool
Developer(s)GNU Project[1]
Initial releaseJuly 9, 1997; 26 years ago (1997-07-09)
Stable release2.4.7 (March 24, 2022; 2 years ago (2022-03-24)[2]) [±]
Repository
Operating systemCross-platform
TypeLibrary
LicenseGPLv2
Websitewww.gnu.org/software/libtool/

Rationale

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".[5]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).[5]

Use

Libtool is used by Autoconf and Automake, two other portability tools in the GNU build system.It can also be used directly.[6]

Clones and derivatives

Since GNU Libtool was released, other free software projects have created drop-in replacements under different software licenses.[7] slibtool is one such implementation.[8]

See also

References

External links