GNU Libtool

From Wikipedia, the free encyclopedia
(Redirected from Libtool)

Template:Short description

Page Module:Message box/ambox.css has no content.

Page Module:Infobox/styles.css has no content.

GNU Libtool
[[Programmer|DeveloperTemplate:Pluralize from text]]GNU Project[1]
Initial releaseJuly 9, 1997; 29 years ago (1997-07-09)
Template:Infobox software/simple
EnginePage Template:Plainlist/styles.css has no content.Template:EditAtWikidata
Operating systemCross-platform
TypeLibrary
LicenseGPLv2
Websitewww.gnu.org/software/libtool/
RepositoryPage Template:Plainlist/styles.css has no content.

Script error: No such module "Check for conflicting parameters".

GNU Libtool is a software development tool, part of the GNU build system, consisting of a shell script[2] 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.[3] It provides a command-line interface that is identical across platforms and it executes the platform's native commands, allowing software authors to offer build support for their code across many diverse platforms such as Linux, BSD variants, Windows (via Cygwin), HP-UX, Solaris (including on SPARC processors), AIX, and IRIX.[4]

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

Lua error in mw.title.lua at line 404: bad argument #2 to 'title.new' (unrecognized namespace name 'Portal').

References

Page Template:Reflist/styles.css has no content.

  1. ^ Page Module:Citation/CS1/styles.css has no content."GNU". Retrieved 25 June 2012.
  2. ^ Page Module:Citation/CS1/styles.css has no content."A postmortem analysis of other implementations". The GNU Libtool manual. The GNU project. 2015-02-15. Retrieved 2021-02-02.
  3. ^ Page Module:Citation/CS1/styles.css has no content."Introduction". The GNU Libtool manual. The GNU project. 2015-02-15. Retrieved 2021-02-02.
  4. ^ Page Module:Citation/CS1/styles.css has no content."Tested platforms". The GNU Libtool manual. The GNU project. 2015-02-15. Retrieved 2025-06-07.
  5. ^ a b Libtool Manual
  6. ^ Page Module:Citation/CS1/styles.css has no content."Writing Makefile rules for libtool". The GNU Libtool manual. The GNU project. 2015-02-15. Retrieved 2021-02-02.
  7. ^ BSD-licensed libtool.
  8. ^ Page Module:Citation/CS1/styles.css has no content."Slibtool - Gentoo wiki". wiki.gentoo.org. Retrieved 2024-03-11.

Lua error in package.lua at line 80: module 'Module:Navbox/configuration' not found. Lua error in mw.title.lua at line 404: bad argument #2 to 'title.new' (unrecognized namespace name 'Portal').