Puneet Varma (Editor)

GNU Libtool

Updated on
Edit
Like
Comment
Share on FacebookTweet on TwitterShare on LinkedInShare on Reddit
Developer(s)
  
GNU Project

Type
  
Library

Operating system
  
Cross-platform

GNU Libtool

Initial release
  
July 9, 1997; 19 years ago (1997-07-09)

Stable release
  
2.4.6 (February 15, 2015; 2 years ago (2015-02-15)) [±]

Repository
  
git.savannah.gnu.org/cgit/libtool.git

GNU Libtool is a computer programming tool from the GNU build system used for creating portable compiled libraries.

Contents

Rationale

Different operating systems handle shared libraries in different ways, and 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. One way to handle this is to write conditional code, with code blocks selected by means of preprocessor directives (#ifdef); but because of the wide variety of build environments this approach quickly becomes unmanageable. The GNU build system is designed to address this problem more manageably.

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". 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).

Use

Libtool is typically used with Autoconf and Automake, two other tools of the GNU build system. However, it is designed so as not to be dependent upon either.

Clones and derivatives

Since GNU Libtool was released, other open source projects have created drop-in replacements under different software licenses.

References

GNU Libtool Wikipedia


Similar Topics