[Top] | [Contents] | [Index] | [ ? ] |
This file documents GNU Libtool 1.5.22
Copyright (C) 1996-2003, 2005 Free Software Foundation, Inc.
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with the no Invariant Sections, with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License".
This file documents GNU Libtool, a script that allows package developers to provide generic shared library support. This edition documents version 1.5.22.
See section Reporting bugs, for information on how to report problems with libtool.
1. Introduction | What the heck is libtool? | |
2. The libtool paradigm | How libtool's view of libraries is different. | |
3. Using libtool | Example of using libtool to build libraries. | |
4. Invoking libtool | Running the libtool script.
| |
5. Integrating libtool with your package | Using libtool in your own packages. | |
6. Library interface versions | Using library interface versions. | |
7. Tips for interface design | Tips for library interface design. | |
8. Inter-library dependencies | Libraries that depend on other libraries. | |
9. Dlopened modules | dlopen ing libtool-created libraries.
| |
10. Using libltdl | Libtool's portable dlopen wrapper library.
| |
11. Using libtool with other languages | Using libtool without a C compiler. | |
12. Troubleshooting | When libtool doesn't work as advertised. | |
13. Maintenance notes for libtool | Information used by the libtool maintainer. | |
GNU Free Documentation License | License for this manual. | |
Index | Full index. | |
--- The Detailed Node Listing --- Introduction | ||
---|---|---|
1.1 Motivation for writing libtool | Why does GNU need a libtool? | |
1.2 Implementation issues | The problems that need to be addressed. | |
1.3 Other implementations | How other people have solved these issues. | |
1.4 A postmortem analysis of other implementations | Learning from past difficulties. | |
Using libtool | ||
3.1 Creating object files | Compiling object files for libraries. | |
3.2 Linking libraries | Creating libraries from object files. | |
3.3 Linking executables | Linking object files against libtool libraries. | |
3.4 Debugging executables | Running GDB on libtool-generated programs. | |
3.5 Installing libraries | Making libraries available to users. | |
3.6 Installing executables | Making programs available to users. | |
3.7 Linking static libraries | When shared libraries are not wanted. | |
Invoking | ||
4.1 Compile mode | Creating library object files. | |
4.2 Link mode | Generating executables and libraries. | |
4.3 Execute mode | Debugging libtool-generated programs. | |
4.4 Install mode | Making libraries and executables public. | |
4.5 Finish mode | Completing a library installation. | |
4.6 Uninstall mode | Removing installed executables and libraries. | |
4.7 Clean mode | Removing uninstalled executables and libraries. | |
Integrating libtool with your package | ||
5.1 Writing `Makefile' rules for libtool | ||
5.2 Using Automake with libtool | Automatically supporting libtool. | |
5.3 Configuring libtool | Configuring libtool for a host system. | |
5.4 Including libtool in your package | What files to distribute with your package. | |
5.5 Static-only libraries | Sometimes shared libraries are just a pain. | |
Configuring libtool | ||
5.3.1 The AC_PROG_LIBTOOL macro | Configuring libtool in `configure.in'.
| |
Including libtool in your package | ||
5.4.1 Invoking libtoolize | libtoolize command line options.
| |
5.4.2 Autoconf `.o' macros | Autoconf macros that set object file names. | |
Library interface versions | ||
6.1 What are library interfaces? | ||
6.2 Libtool's versioning system | ||
6.3 Updating library version information | Changing version information before releases. | |
6.4 Managing release information | Breaking binary compatibility for aesthetics. | |
Tips for interface design | ||
7.1 Writing C header files | How to write portable include files. | |
Dlopened modules | ||
9.1 Building modules to dlopen | Creating dlopenable objects and libraries. | |
9.2 Dlpreopening | Dlopening that works on static platforms. | |
9.3 Finding the correct name to dlopen | Choosing the right file to dlopen .
| |
9.4 Unresolved dlopen issues | Unresolved problems that need your attention. | |
Using libltdl | ||
10.1 How to use libltdl in your programs | ||
10.2 Creating modules that can be dlopen ed | ||
10.3 Using libtldl in a multi threaded environment | Registering callbacks for multi-thread safety. | |
10.4 Data associated with loaded modules | Associating data with loaded modules. | |
10.5 How to create and register new module loaders | Creating user defined module loaders. | |
10.6 How to distribute libltdl with your package | ||
Using libtool with other languages | ||
11.1 Writing libraries for C++ | ||
Troubleshooting | ||
12.1 The libtool test suite | Libtool's self-tests. | |
12.2 Reporting bugs | How to report problems with libtool. | |
The libtool test suite | ||
12.1.1 Description of test suite | The contents of the test suite. | |
12.1.2 When tests fail | What to do when a test fails. | |
Maintenance notes for libtool | ||
13.1 Porting libtool to new systems | How to port libtool to new systems. | |
13.2 Tested platforms | When libtool was last tested. | |
13.3 Platform quirks | Information about different library systems. | |
13.4 libtool script contents | Configuration information that libtool uses. | |
13.5 Cheap tricks | Making libtool maintainership easier. | |
Porting libtool to new systems | ||
13.1.1 Information sources | Where to find relevant documentation | |
13.1.2 Porting inter-library dependencies support | Implementation details explained | |
Platform quirks | ||
13.3.1 References | Finding more information. | |
13.3.2 Compilers | Creating object files from source files. | |
13.3.3 Reloadable objects | Binding object files together. | |
13.3.4 Multiple dependencies | Removing duplicate dependent libraries. | |
13.3.5 Archivers | Programs that create static archives. | |
[Top] | [Contents] | [Index] | [ ? ] |
This document was generated by System Administrator on February, 19 2008 using texi2html 1.70.