This is libtool.info, produced by makeinfo version 5.2 from
libtool.texi.

This manual is for GNU Libtool (version 2.4.6, 16 January 2015).

   Copyright (C) 1996-2015 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.3 or
any later version published by the Free Software Foundation; with 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".
INFO-DIR-SECTION Software development
START-INFO-DIR-ENTRY
* Libtool: (libtool).           Generic shared library support script.
END-INFO-DIR-ENTRY

INFO-DIR-SECTION Individual utilities
START-INFO-DIR-ENTRY
* libtool-invocation: (libtool)Invoking libtool. Running the 'libtool' script.
* libtoolize: (libtool)Invoking libtoolize.      Adding libtool support.
END-INFO-DIR-ENTRY


File: libtool.info,  Node: Combined Index,  Prev: GNU Free Documentation License,  Up: Top

Combined Index
**************

 [index ]
* Menu:

* '-no-suppress', libtool compile mode option: Creating object files.
                                                              (line  92)
* '-weak' option:                        Linking with dlopened modules.
                                                              (line  94)
* '.la' files:                           Linking libraries.   (line  24)
* '.libs' subdirectory:                  Linking libraries.   (line  77)
* '.lo' files:                           Creating object files.
                                                              (line  28)
* aclocal:                               LT_INIT.             (line 363)
* AC_CONFIG_AUX_DIR:                     Invoking libtoolize. (line 156)
* AC_CONFIG_MACRO_DIRS:                  Invoking libtoolize. (line 135)
* AC_DISABLE_FAST_INSTALL:               LT_INIT.             (line 212)
* AC_DISABLE_SHARED:                     LT_INIT.             (line 216)
* AC_DISABLE_STATIC:                     LT_INIT.             (line 233)
* AC_ENABLE_SHARED:                      LT_INIT.             (line 224)
* AC_ENABLE_STATIC:                      LT_INIT.             (line 241)
* AC_LIBLTDL_CONVENIENCE:                Distributing libltdl.
                                                              (line 299)
* AC_LIBLTDL_INSTALLABLE:                Distributing libltdl.
                                                              (line 294)
* AC_LIBTOOL_DLOPEN:                     LT_INIT.             (line 204)
* AC_LIBTOOL_WIN32_DLL:                  LT_INIT.             (line 208)
* AC_PROG_LIBTOOL:                       LT_INIT.             (line  21)
* AC_WITH_LTDL:                          Distributing libltdl.
                                                              (line  41)
* allow_undefined_flag:                  libtool script contents.
                                                              (line  74)
* always_export_symbols:                 libtool script contents.
                                                              (line  81)
* AM_DISABLE_SHARED:                     LT_INIT.             (line 217)
* AM_DISABLE_STATIC:                     LT_INIT.             (line 234)
* AM_ENABLE_SHARED:                      LT_INIT.             (line 225)
* AM_ENABLE_STATIC:                      LT_INIT.             (line 242)
* AM_PROG_LIBTOOL:                       LT_INIT.             (line  22)
* application-level dynamic linking:     Dlopened modules.    (line   6)
* application-level dynamic linking <1>: Using libltdl.       (line   6)
* ar:                                    Linking libraries.   (line   6)
* AR:                                    libtool script contents.
                                                              (line  28)
* archiver_list_spec:                    libtool script contents.
                                                              (line  92)
* archive_cmds:                          libtool script contents.
                                                              (line  86)
* archive_expsym_cmds:                   libtool script contents.
                                                              (line  87)
* AS:                                    LT_INIT.             (line 303)
* autoconf traces:                       Trace interface.     (line   6)
* avoiding shared libraries:             Static-only libraries.
                                                              (line   6)
* bug reports:                           Reporting bugs.      (line   6)
* buggy system linkers:                  Linking executables. (line  11)
* bugs, subtle ones caused by buggy linkers: Linking executables.
                                                              (line  16)
* build:                                 libtool script contents.
                                                              (line 116)
* build_alias:                           libtool script contents.
                                                              (line 117)
* build_libtool_libs:                    libtool script contents.
                                                              (line 122)
* build_old_libs:                        libtool script contents.
                                                              (line 126)
* build_os:                              libtool script contents.
                                                              (line 118)
* C header files, portable:              C header files.      (line   6)
* C++, pitfalls:                         C++ libraries.       (line   6)
* C++, using:                            Other languages.     (line   6)
* C, not using:                          Other languages.     (line   6)
* CC:                                    LT_INIT.             (line 255)
* CC <1>:                                libtool script contents.
                                                              (line  31)
* cdemo-conf.test:                       Test descriptions.   (line  21)
* cdemo-exec.test:                       Test descriptions.   (line  21)
* cdemo-make.test:                       Test descriptions.   (line  21)
* cdemo-shared-exec.test:                Test descriptions.   (line  21)
* cdemo-shared-make.test:                Test descriptions.   (line  21)
* cdemo-shared.test:                     Test descriptions.   (line  21)
* cdemo-static-exec.test:                Test descriptions.   (line  21)
* cdemo-static-make.test:                Test descriptions.   (line  21)
* cdemo-static.test:                     Test descriptions.   (line  21)
* cdemo-undef-exec.test:                 Test descriptions.   (line  21)
* cdemo-undef-make.test:                 Test descriptions.   (line  21)
* cdemo-undef.test:                      Test descriptions.   (line  21)
* CFLAGS:                                LT_INIT.             (line 259)
* 'check-interactive':                   Test descriptions.   (line 332)
* 'check-noninteractive':                Test descriptions.   (line 332)
* clean mode:                            Clean mode.          (line   6)
* command options, libtool:              Invoking libtool.    (line   6)
* command options, libtoolize:           Invoking libtoolize. (line   6)
* compile mode:                          Compile mode.        (line   6)
* compiler_c_o:                          libtool script contents.
                                                              (line 130)
* compiler_needs_object:                 libtool script contents.
                                                              (line 134)
* compiling object files:                Creating object files.
                                                              (line   6)
* complexity of library systems:         Postmortem.          (line  11)
* config.guess:                          Distributing.        (line  10)
* config.sub:                            Distributing.        (line  13)
* configuring libtool:                   Configuring.         (line   6)
* convenience libraries:                 Static libraries.    (line   6)
* CPPFLAGS:                              LT_INIT.             (line 264)
* cross compile:                         Cross compiling.     (line   6)
* Cygwin to MinGW Cross:                 Cygwin to MinGW Cross.
                                                              (line   6)
* debugging libraries:                   Static-only libraries.
                                                              (line   6)
* definition of libraries:               Libtool paradigm.    (line  11)
* demo-conf.test:                        Test descriptions.   (line  66)
* demo-deplibs.test:                     Test descriptions.   (line  84)
* demo-exec.test:                        Test descriptions.   (line  66)
* demo-hardcode.test:                    Test descriptions.   (line  90)
* demo-inst.test:                        Test descriptions.   (line  66)
* demo-make.test:                        Test descriptions.   (line  66)
* demo-nofast-exec.test:                 Test descriptions.   (line  66)
* demo-nofast-inst.test:                 Test descriptions.   (line  66)
* demo-nofast-make.test:                 Test descriptions.   (line  66)
* demo-nofast-unst.test:                 Test descriptions.   (line  66)
* demo-nofast.test:                      Test descriptions.   (line  66)
* demo-noinst-link.test:                 Test descriptions.   (line 103)
* demo-nopic-exec.test:                  Test descriptions.   (line  66)
* demo-nopic-make.test:                  Test descriptions.   (line  66)
* demo-nopic.test:                       Test descriptions.   (line  66)
* demo-pic-exec.test:                    Test descriptions.   (line  66)
* demo-pic-make.test:                    Test descriptions.   (line  66)
* demo-pic.test:                         Test descriptions.   (line  66)
* demo-relink.test:                      Test descriptions.   (line  98)
* demo-shared-exec.test:                 Test descriptions.   (line  66)
* demo-shared-inst.test:                 Test descriptions.   (line  66)
* demo-shared-make.test:                 Test descriptions.   (line  66)
* demo-shared-unst.test:                 Test descriptions.   (line  66)
* demo-shared.test:                      Test descriptions.   (line  66)
* demo-static-exec.test:                 Test descriptions.   (line  66)
* demo-static-inst.test:                 Test descriptions.   (line  66)
* demo-static-make.test:                 Test descriptions.   (line  66)
* demo-static-unst.test:                 Test descriptions.   (line  66)
* demo-static.test:                      Test descriptions.   (line  66)
* demo-unst.test:                        Test descriptions.   (line  66)
* depdemo-conf.test:                     Test descriptions.   (line 127)
* depdemo-exec.test:                     Test descriptions.   (line 127)
* depdemo-inst.test:                     Test descriptions.   (line 127)
* depdemo-make.test:                     Test descriptions.   (line 127)
* depdemo-nofast-exec.test:              Test descriptions.   (line 127)
* depdemo-nofast-inst.test:              Test descriptions.   (line 127)
* depdemo-nofast-make.test:              Test descriptions.   (line 127)
* depdemo-nofast-unst.test:              Test descriptions.   (line 127)
* depdemo-nofast.test:                   Test descriptions.   (line 127)
* depdemo-relink.test:                   Test descriptions.   (line  98)
* depdemo-shared-exec.test:              Test descriptions.   (line 127)
* depdemo-shared-inst.test:              Test descriptions.   (line 127)
* depdemo-shared-make.test:              Test descriptions.   (line 127)
* depdemo-shared-unst.test:              Test descriptions.   (line 127)
* depdemo-shared.test:                   Test descriptions.   (line 127)
* depdemo-static-exec.test:              Test descriptions.   (line 127)
* depdemo-static-inst.test:              Test descriptions.   (line 127)
* depdemo-static-make.test:              Test descriptions.   (line 127)
* depdemo-static-unst.test:              Test descriptions.   (line 127)
* depdemo-static.test:                   Test descriptions.   (line 127)
* depdemo-unst.test:                     Test descriptions.   (line 127)
* dependencies between libraries:        Inter-library dependencies.
                                                              (line   6)
* dependency versioning:                 Versioning.          (line   6)
* deplibs_check_method:                  Porting inter-library dependencies.
                                                              (line   6)
* design issues:                         Issues.              (line   6)
* design of library interfaces:          Library tips.        (line   6)
* design philosophy:                     Motivation.          (line   6)
* developing libraries:                  Static-only libraries.
                                                              (line   6)
* dlclose:                               Dlopened modules.    (line   6)
* dlclose <1>:                           Using libltdl.       (line   6)
* dlerror:                               Using libltdl.       (line   6)
* DLLTOOL:                               LT_INIT.             (line 295)
* dlopen:                                Dlopened modules.    (line   6)
* dlopen <1>:                            Using libltdl.       (line   6)
* dlopening modules:                     Dlopened modules.    (line   6)
* dlopening modules <1>:                 Using libltdl.       (line   6)
* dlopening, pitfalls:                   Dlopen issues.       (line   6)
* dlopen_self:                           libtool script contents.
                                                              (line 144)
* dlopen_self_static:                    libtool script contents.
                                                              (line 148)
* dlopen_support:                        libtool script contents.
                                                              (line 140)
* dlsym:                                 Dlopened modules.    (line   6)
* dlsym <1>:                             Using libltdl.       (line   6)
* double-compilation, avoiding:          Static-only libraries.
                                                              (line   6)
* dynamic dependencies:                  Versioning.          (line   6)
* dynamic linking, applications:         Dlopened modules.    (line   6)
* dynamic linking, applications <1>:     Using libltdl.       (line   6)
* dynamic modules, names:                Finding the dlname.  (line   6)
* ECHO:                                  libtool script contents.
                                                              (line  36)
* eliding shared libraries:              Static-only libraries.
                                                              (line   6)
* examples of using libtool:             Using libtool.       (line   6)
* exclude_expsyms:                       libtool script contents.
                                                              (line 152)
* execute mode:                          Execute mode.        (line   6)
* export_dynamic_flag_spec:              libtool script contents.
                                                              (line 155)
* export_symbols_cmds:                   libtool script contents.
                                                              (line 159)
* extract_expsyms_cmds:                  libtool script contents.
                                                              (line 163)
* f77demo-conf.test:                     Test descriptions.   (line 262)
* f77demo-exec.test:                     Test descriptions.   (line 262)
* f77demo-make.test:                     Test descriptions.   (line 262)
* f77demo-shared-exec.test:              Test descriptions.   (line 262)
* f77demo-shared-make.test:              Test descriptions.   (line 262)
* f77demo-shared.test:                   Test descriptions.   (line 262)
* f77demo-static-exec.test:              Test descriptions.   (line 262)
* f77demo-static-make.test:              Test descriptions.   (line 262)
* f77demo-static.test:                   Test descriptions.   (line 262)
* failed tests:                          When tests fail.     (line   6)
* fast_install:                          libtool script contents.
                                                              (line 170)
* fcdemo-conf.test:                      Test descriptions.   (line 280)
* fcdemo-exec.test:                      Test descriptions.   (line 280)
* fcdemo-make.test:                      Test descriptions.   (line 280)
* fcdemo-shared-exec.test:               Test descriptions.   (line 280)
* fcdemo-shared-make.test:               Test descriptions.   (line 280)
* fcdemo-shared.test:                    Test descriptions.   (line 280)
* fcdemo-static-exec.test:               Test descriptions.   (line 280)
* fcdemo-static-make.test:               Test descriptions.   (line 280)
* fcdemo-static.test:                    Test descriptions.   (line 280)
* FDL, GNU Free Documentation License:   GNU Free Documentation License.
                                                              (line   6)
* file name conversion:                  File name conversion.
                                                              (line   6)
* File Name Conversion - Cygwin to Windows: Cygwin/Windows File Name Conversion.
                                                              (line   6)
* File Name Conversion - Failure:        File Name Conversion Failure.
                                                              (line   6)
* File Name Conversion - MinGW:          Native MinGW File Name Conversion.
                                                              (line   6)
* File Name Conversion - Unix to Windows: Unix/Windows File Name Conversion.
                                                              (line   6)
* file_magic:                            Porting inter-library dependencies.
                                                              (line  18)
* file_magic_cmd:                        Porting inter-library dependencies.
                                                              (line  18)
* file_magic_glob:                       libtool script contents.
                                                              (line 192)
* file_magic_test_file:                  Porting inter-library dependencies.
                                                              (line  18)
* finish mode:                           Finish mode.         (line   6)
* finish_cmds:                           libtool script contents.
                                                              (line 201)
* finish_eval:                           libtool script contents.
                                                              (line 205)
* formal versioning:                     Libtool versioning.  (line   6)
* func_convert_file_cygwin_to_w32:       Cygwin to MinGW Cross.
                                                              (line  38)
* func_convert_file_cygwin_to_w32 <1>:   Cygwin to MinGW Cross.
                                                              (line  61)
* global functions:                      Library tips.        (line  45)
* global_symbol_pipe:                    libtool script contents.
                                                              (line 208)
* global_symbol_to_cdecl:                libtool script contents.
                                                              (line 222)
* hardcode_action:                       libtool script contents.
                                                              (line 228)
* hardcode_direct:                       libtool script contents.
                                                              (line 233)
* hardcode_direct_absolute:              libtool script contents.
                                                              (line 239)
* hardcode_into_libs:                    libtool script contents.
                                                              (line 245)
* hardcode_libdir_flag_spec:             libtool script contents.
                                                              (line 251)
* hardcode_libdir_separator:             libtool script contents.
                                                              (line 257)
* hardcode_minus_L:                      libtool script contents.
                                                              (line 262)
* hardcode_shlibpath_var:                libtool script contents.
                                                              (line 267)
* header files:                          Library tips.        (line  39)
* host:                                  libtool script contents.
                                                              (line 274)
* host_alias:                            libtool script contents.
                                                              (line 275)
* host_os:                               libtool script contents.
                                                              (line 276)
* implementation of libtool:             libtool script contents.
                                                              (line   6)
* include files, portable:               C header files.      (line   6)
* include_expsyms:                       libtool script contents.
                                                              (line 280)
* inferring tags:                        Tags.                (line   6)
* inherit_rpath:                         libtool script contents.
                                                              (line 284)
* install:                               Installing libraries.
                                                              (line  19)
* install mode:                          Install mode.        (line   6)
* install-sh:                            Distributing.        (line  16)
* installation, finishing:               Installing libraries.
                                                              (line  54)
* install_override_mode:                 libtool script contents.
                                                              (line 289)
* inter-library dependencies:            Inter-library dependencies.
                                                              (line   6)
* inter-library dependency:              Porting inter-library dependencies.
                                                              (line   6)
* language names:                        Tags.                (line   6)
* languages, non-C:                      Other languages.     (line   6)
* LD:                                    LT_INIT.             (line 269)
* LD <1>:                                libtool script contents.
                                                              (line  41)
* LDFLAGS:                               LT_INIT.             (line 274)
* libext:                                libtool script contents.
                                                              (line 297)
* libltdl:                               Using libltdl.       (line   6)
* libname_spec:                          libtool script contents.
                                                              (line 300)
* libraries, definition of:              Libtool paradigm.    (line  11)
* libraries, finishing installation:     Installing libraries.
                                                              (line  54)
* libraries, stripping:                  Installing libraries.
                                                              (line  44)
* library interfaces:                    Interfaces.          (line   6)
* library interfaces, design:            Library tips.        (line   6)
* library object file:                   Creating object files.
                                                              (line  28)
* library_names_spec:                    libtool script contents.
                                                              (line 305)
* LIBS:                                  LT_INIT.             (line 279)
* libtool:                               Invoking libtool.    (line   6)
* libtool command options:               Invoking libtool.    (line   6)
* libtool examples:                      Using libtool.       (line   6)
* libtool implementation:                libtool script contents.
                                                              (line   6)
* libtool libraries:                     Linking libraries.   (line  24)
* libtool library versions:              Libtool versioning.  (line   6)
* libtool specifications:                Motivation.          (line  20)
* libtoolize:                            Invoking libtoolize. (line   6)
* libtoolize command options:            Invoking libtoolize. (line   6)
* LIBTOOLIZE_OPTIONS:                    Invoking libtoolize. (line 119)
* link mode:                             Link mode.           (line   6)
* link-2.test:                           Test descriptions.   (line 197)
* link.test:                             Test descriptions.   (line 193)
* linking against installed libraries:   Linking executables. (line   6)
* linking against uninstalled libraries: Linking executables. (line  25)
* linking with installed libtool libraries: Linking executables.
                                                              (line  50)
* linking, dlopen:                       Linking with dlopened modules.
                                                              (line   6)
* linking, dlpreopen:                    Linking with dlopened modules.
                                                              (line   6)
* linking, partial:                      Link mode.           (line 211)
* link_all_deplibs:                      libtool script contents.
                                                              (line 310)
* link_static_flag:                      libtool script contents.
                                                              (line 315)
* LN_S:                                  LT_INIT.             (line 290)
* lock_old_archive_extraction:           libtool script contents.
                                                              (line 112)
* LTCC:                                  libtool script contents.
                                                              (line  45)
* LTCFLAGS:                              libtool script contents.
                                                              (line  46)
* LTDL_CONVENIENCE:                      Distributing libltdl.
                                                              (line 298)
* LTDL_INIT:                             Distributing libltdl.
                                                              (line  39)
* LTDL_INSTALLABLE:                      Distributing libltdl.
                                                              (line 293)
* LTDL_SET_PRELOADED_SYMBOLS:            Dlpreopening.        (line  84)
* LTLIBOBJS:                             Autoconf and LTLIBOBJS.
                                                              (line   8)
* LTLIBRARIES:                           Using Automake.      (line   6)
* ltmain.sh:                             Distributing.        (line  19)
* LT_CMD_MAX_LEN:                        Autoconf macros.     (line  14)
* LT_CONFIG_LTDL_DIR:                    Distributing libltdl.
                                                              (line  31)
* lt_cv_to_host_file_cmd:                Cygwin to MinGW Cross.
                                                              (line  61)
* lt_cv_to_tool_file_cmd:                Cygwin to MinGW Cross.
                                                              (line  38)
* lt_cv_to_tool_file_cmd <1>:            Cygwin to MinGW Cross.
                                                              (line  61)
* LT_CYGPATH:                            LT_CYGPATH.          (line   6)
* LT_DIRSEP_CHAR:                        Libltdl interface.   (line  39)
* lt_dladderror:                         Module loaders for libltdl.
                                                              (line 188)
* lt_dladdsearchdir:                     Libltdl interface.   (line 241)
* lt_dladvise:                           Libltdl interface.   (line  49)
* lt_dladvise_destroy:                   Libltdl interface.   (line 144)
* lt_dladvise_ext:                       Libltdl interface.   (line 151)
* lt_dladvise_global:                    Libltdl interface.   (line 176)
* lt_dladvise_init:                      Libltdl interface.   (line 134)
* lt_dladvise_local:                     Libltdl interface.   (line 193)
* lt_dladvise_preload:                   Libltdl interface.   (line 219)
* lt_dladvise_resident:                  Libltdl interface.   (line 210)
* lt_dlcaller_get_data:                  User defined module data.
                                                              (line 152)
* lt_dlcaller_set_data:                  User defined module data.
                                                              (line 126)
* lt_dlclose:                            Libltdl interface.   (line 225)
* lt_dlerror:                            Libltdl interface.   (line 235)
* lt_dlexit:                             Libltdl interface.   (line  65)
* lt_dlforeachfile:                      Libltdl interface.   (line 260)
* lt_dlgetinfo:                          User defined module data.
                                                              (line  26)
* lt_dlgetsearchpath:                    Libltdl interface.   (line 257)
* lt_dlhandle:                           Libltdl interface.   (line  45)
* lt_dlhandle_fetch:                     User defined module data.
                                                              (line 111)
* lt_dlhandle_interface:                 User defined module data.
                                                              (line  39)
* lt_dlhandle_iterate:                   User defined module data.
                                                              (line  96)
* lt_dlhandle_map:                       User defined module data.
                                                              (line  85)
* lt_dlinfo:                             User defined module data.
                                                              (line  10)
* lt_dlinit:                             Libltdl interface.   (line  60)
* lt_dlinsertsearchdir:                  Libltdl interface.   (line 245)
* lt_dlinterface_free:                   User defined module data.
                                                              (line  82)
* lt_dlinterface_id:                     User defined module data.
                                                              (line  35)
* lt_dlinterface_register:               User defined module data.
                                                              (line  73)
* lt_dlisresident:                       Libltdl interface.   (line 289)
* lt_dlloader:                           Module loaders for libltdl.
                                                              (line  41)
* lt_dlloader_add:                       Module loaders for libltdl.
                                                              (line 128)
* lt_dlloader_data:                      Module loaders for libltdl.
                                                              (line 179)
* lt_dlloader_exit:                      Module loaders for libltdl.
                                                              (line  83)
* lt_dlloader_find:                      Module loaders for libltdl.
                                                              (line 161)
* lt_dlloader_name:                      Module loaders for libltdl.
                                                              (line 173)
* lt_dlloader_next:                      Module loaders for libltdl.
                                                              (line 152)
* lt_dlloader_remove:                    Module loaders for libltdl.
                                                              (line 142)
* lt_dlmakeresident:                     Libltdl interface.   (line 279)
* lt_dlopen:                             Libltdl interface.   (line  71)
* lt_dlopenadvise:                       Libltdl interface.   (line 123)
* lt_dlopenext:                          Libltdl interface.   (line 108)
* lt_dlpreload:                          Dlpreopening.        (line  68)
* lt_dlpreload_callback_func:            Dlpreopening.        (line  96)
* lt_dlpreload_default:                  Dlpreopening.        (line  74)
* lt_dlpreload_open:                     Dlpreopening.        (line 101)
* lt_dlseterror:                         Module loaders for libltdl.
                                                              (line 200)
* lt_dlsetsearchpath:                    Libltdl interface.   (line 252)
* lt_dlsym:                              Libltdl interface.   (line 230)
* lt_dlsymlist:                          Dlpreopening.        (line  40)
* lt_dlsymlist <1>:                      Libltdl interface.   (line  54)
* lt_find_sym:                           Module loaders for libltdl.
                                                              (line  76)
* LT_FUNC_DLSYM_USCORE:                  Autoconf macros.     (line  23)
* LT_INIT:                               LT_INIT.             (line  20)
* LT_LANG:                               LT_INIT.             (line 183)
* LT_LIB_DLLOAD:                         Autoconf macros.     (line  34)
* LT_LIB_M:                              Autoconf macros.     (line  30)
* lt_module:                             Module loaders for libltdl.
                                                              (line  37)
* lt_module_close:                       Module loaders for libltdl.
                                                              (line  68)
* lt_module_open:                        Module loaders for libltdl.
                                                              (line  58)
* LT_OUTPUT:                             LT_INIT.             (line 349)
* LT_PATHSEP_CHAR:                       Libltdl interface.   (line  35)
* LT_PATH_LD:                            Autoconf macros.     (line  49)
* LT_PATH_NM:                            Autoconf macros.     (line  55)
* lt_preloaded_symbols[]:                Dlpreopening.        (line  46)
* LT_PREREQ:                             LT_INIT.             (line  12)
* LT_SUPPORTED_TAG:                      Trace interface.     (line  12)
* LT_SYS_DLOPEN_DEPLIBS:                 Autoconf macros.     (line  68)
* LT_SYS_DLOPEN_SELF:                    Autoconf macros.     (line  62)
* LT_SYS_DLSEARCH_PATH:                  Autoconf macros.     (line  73)
* LT_SYS_LIBRARY_PATH:                   LT_INIT.             (line 311)
* LT_SYS_MODULE_EXT:                     Autoconf macros.     (line  77)
* LT_SYS_MODULE_PATH:                    Autoconf macros.     (line  83)
* LT_SYS_SYMBOL_USCORE:                  Autoconf macros.     (line  88)
* lt_user_data:                          Module loaders for libltdl.
                                                              (line  44)
* lt_user_dlloader:                      Module loaders for libltdl.
                                                              (line  47)
* LT_WITH_LTDL:                          Distributing libltdl.
                                                              (line  40)
* macro_revision:                        libtool script contents.
                                                              (line 320)
* macro_version:                         libtool script contents.
                                                              (line 319)
* Makefile:                              Makefile rules.      (line   6)
* Makefile.am:                           Makefile rules.      (line   6)
* Makefile.in:                           Makefile rules.      (line   6)
* MANIFEST_TOOL:                         LT_INIT.             (line 307)
* max_cmd_len:                           libtool script contents.
                                                              (line 325)
* mdemo-conf.test:                       Test descriptions.   (line 160)
* mdemo-dryrun.test:                     Test descriptions.   (line 179)
* mdemo-exec.test:                       Test descriptions.   (line 160)
* mdemo-inst.test:                       Test descriptions.   (line 160)
* mdemo-make.test:                       Test descriptions.   (line 160)
* mdemo-shared-exec.test:                Test descriptions.   (line 160)
* mdemo-shared-inst.test:                Test descriptions.   (line 160)
* mdemo-shared-make.test:                Test descriptions.   (line 160)
* mdemo-shared-unst.test:                Test descriptions.   (line 160)
* mdemo-shared.test:                     Test descriptions.   (line 160)
* mdemo-static-exec.test:                Test descriptions.   (line 160)
* mdemo-static-inst.test:                Test descriptions.   (line 160)
* mdemo-static-make.test:                Test descriptions.   (line 160)
* mdemo-static-unst.test:                Test descriptions.   (line 160)
* mdemo-static.test:                     Test descriptions.   (line 160)
* mdemo-unst.test:                       Test descriptions.   (line 160)
* mdemo2-conf.test:                      Test descriptions.   (line 184)
* mdemo2-exec.test:                      Test descriptions.   (line 184)
* mdemo2-make.test:                      Test descriptions.   (line 184)
* mode, clean:                           Clean mode.          (line   6)
* mode, compile:                         Compile mode.        (line   6)
* mode, execute:                         Execute mode.        (line   6)
* mode, finish:                          Finish mode.         (line   6)
* mode, install:                         Install mode.        (line   6)
* mode, link:                            Link mode.           (line   6)
* mode, uninstall:                       Uninstall mode.      (line   6)
* modules, dynamic:                      Dlopened modules.    (line   6)
* modules, dynamic <1>:                  Using libltdl.       (line   6)
* motivation for writing libtool:        Motivation.          (line   6)
* MSYS:                                  Native MinGW File Name Conversion.
                                                              (line   6)
* names of dynamic modules:              Finding the dlname.  (line   6)
* need_lib_prefix:                       libtool script contents.
                                                              (line 329)
* need_locks:                            libtool script contents.
                                                              (line 342)
* need_version:                          libtool script contents.
                                                              (line 336)
* NM:                                    LT_INIT.             (line 284)
* NM <1>:                                libtool script contents.
                                                              (line  50)
* nm_file_list_spec:                     libtool script contents.
                                                              (line 346)
* nomode.test:                           Test descriptions.   (line 201)
* none:                                  Porting inter-library dependencies.
                                                              (line  38)
* no_builtin_flag:                       libtool script contents.
                                                              (line 349)
* no_undefined_flag:                     libtool script contents.
                                                              (line 353)
* objdir:                                libtool script contents.
                                                              (line 358)
* OBJDUMP:                               LT_INIT.             (line 299)
* object files, compiling:               Creating object files.
                                                              (line   6)
* object files, library:                 Creating object files.
                                                              (line  28)
* objectlist.test:                       Test descriptions.   (line 204)
* objext:                                libtool script contents.
                                                              (line 361)
* old_archive_cmds:                      libtool script contents.
                                                              (line  88)
* old_archive_from_expsyms_cmds:         libtool script contents.
                                                              (line 101)
* old_archive_from_new_cmds:             libtool script contents.
                                                              (line  95)
* old_postinstall_cmds:                  libtool script contents.
                                                              (line 368)
* old_postuninstall_cmds:                libtool script contents.
                                                              (line 373)
* old_striplib:                          libtool script contents.
                                                              (line 413)
* opaque data types:                     Library tips.        (line  28)
* options, libtool command:              Invoking libtool.    (line   6)
* options, libtoolize command:           Invoking libtoolize. (line   6)
* other implementations, flaws in:       Postmortem.          (line   6)
* partial linking:                       Link mode.           (line 211)
* pass_all:                              Porting inter-library dependencies.
                                                              (line  32)
* path conversion:                       File name conversion.
                                                              (line   6)
* Path Conversion - Cygwin to Windows:   Cygwin/Windows File Name Conversion.
                                                              (line   6)
* Path Conversion - Failure:             File Name Conversion Failure.
                                                              (line   6)
* Path Conversion - MinGW:               Native MinGW File Name Conversion.
                                                              (line   6)
* Path Conversion - Unix to Windows:     Unix/Windows File Name Conversion.
                                                              (line   6)
* pdemo-conf.test:                       Test descriptions.   (line 210)
* pdemo-exec.test:                       Test descriptions.   (line 210)
* pdemo-inst.test:                       Test descriptions.   (line 210)
* pdemo-make.test:                       Test descriptions.   (line 210)
* PIC (position-independent code):       Creating object files.
                                                              (line  23)
* pic_flag:                              libtool script contents.
                                                              (line 364)
* pitfalls using C++:                    C++ libraries.       (line   6)
* pitfalls with dlopen:                  Dlopen issues.       (line   6)
* portable C headers:                    C header files.      (line   6)
* position-independent code:             Creating object files.
                                                              (line  23)
* postinstallation:                      Installing libraries.
                                                              (line  54)
* postinstall_cmds:                      libtool script contents.
                                                              (line 367)
* postlink_cmds:                         libtool script contents.
                                                              (line 377)
* postuninstall_cmds:                    libtool script contents.
                                                              (line 372)
* problem reports:                       Reporting bugs.      (line   6)
* problems, blaming somebody else for:   Troubleshooting.     (line   6)
* problems, solving:                     Troubleshooting.     (line   6)
* program wrapper executables:           Wrapper executables. (line   6)
* program wrapper scripts:               Linking executables. (line  71)
* quote.test:                            Test descriptions.   (line 219)
* ranlib:                                Linking libraries.   (line  12)
* RANLIB:                                LT_INIT.             (line 287)
* RANLIB <1>:                            libtool script contents.
                                                              (line  71)
* reload_cmds:                           libtool script contents.
                                                              (line 386)
* reload_flag:                           libtool script contents.
                                                              (line 387)
* renaming interface functions:          Library tips.        (line  21)
* reporting bugs:                        Reporting bugs.      (line   6)
* reusability of library systems:        Postmortem.          (line   6)
* runpath_var:                           libtool script contents.
                                                              (line 391)
* saving time:                           Static-only libraries.
                                                              (line   6)
* security problems with buggy linkers:  Linking executables. (line  16)
* sh.test:                               Test descriptions.   (line 222)
* shared libraries, not using:           Static-only libraries.
                                                              (line   6)
* shared library versions:               Versioning.          (line   6)
* shlibpath_overrides_runpath:           libtool script contents.
                                                              (line 395)
* shlibpath_var:                         libtool script contents.
                                                              (line 404)
* shl_load:                              Dlopened modules.    (line   6)
* shl_load <1>:                          Using libltdl.       (line   6)
* solving problems:                      Troubleshooting.     (line   6)
* soname_spec:                           libtool script contents.
                                                              (line 408)
* specifications for libtool:            Motivation.          (line  20)
* standalone binaries:                   Static libraries.    (line  63)
* static linking:                        Static libraries.    (line   6)
* strip:                                 Installing libraries.
                                                              (line   6)
* striplib:                              libtool script contents.
                                                              (line 412)
* stripping libraries:                   Installing libraries.
                                                              (line  44)
* su:                                    Installing libraries.
                                                              (line   9)
* suffix.test:                           Test descriptions.   (line 226)
* sys_lib_dlsearch_path_spec:            libtool script contents.
                                                              (line 419)
* sys_lib_search_path_spec:              libtool script contents.
                                                              (line 424)
* tag names:                             Tags.                (line   6)
* tagdemo-conf.test:                     Test descriptions.   (line 244)
* tagdemo-exec.test:                     Test descriptions.   (line 244)
* tagdemo-make.test:                     Test descriptions.   (line 244)
* tagdemo-shared-exec.test:              Test descriptions.   (line 244)
* tagdemo-shared-make.test:              Test descriptions.   (line 244)
* tagdemo-shared.test:                   Test descriptions.   (line 244)
* tagdemo-static-exec.test:              Test descriptions.   (line 244)
* tagdemo-static-make.test:              Test descriptions.   (line 244)
* tagdemo-static.test:                   Test descriptions.   (line 244)
* tagdemo-undef-exec.test:               Test descriptions.   (line 244)
* tagdemo-undef-make.test:               Test descriptions.   (line 244)
* tagdemo-undef.test:                    Test descriptions.   (line 244)
* test suite:                            Libtool test suite.  (line   6)
* tests, failed:                         When tests fail.     (line   6)
* test_compile:                          Porting inter-library dependencies.
                                                              (line  26)
* thread_safe_flag_spec:                 libtool script contents.
                                                              (line 433)
* time, saving:                          Static-only libraries.
                                                              (line   6)
* to_host_file_cmd:                      libtool script contents.
                                                              (line 437)
* to_tool_file_cmd:                      libtool script contents.
                                                              (line 447)
* trace interface:                       Trace interface.     (line   6)
* tricky design issues:                  Issues.              (line   6)
* trouble with C++:                      C++ libraries.       (line   6)
* trouble with dlopen:                   Dlopen issues.       (line   6)
* troubleshooting:                       Troubleshooting.     (line   6)
* undefined symbols, allowing:           Link mode.           (line  14)
* uninstall mode:                        Uninstall mode.      (line   6)
* unknown:                               Porting inter-library dependencies.
                                                              (line  43)
* unresolved symbols, allowing:          Link mode.           (line  14)
* using shared libraries, not:           Static-only libraries.
                                                              (line   6)
* versioning, formal:                    Libtool versioning.  (line   6)
* version_type:                          libtool script contents.
                                                              (line 454)
* want_nocaseglob:                       libtool script contents.
                                                              (line 459)
* whole_archive_flag_spec:               libtool script contents.
                                                              (line 465)
* Windows DLLs:                          Windows DLLs.        (line   6)
* wl:                                    libtool script contents.
                                                              (line 468)
* wrapper executables for uninstalled programs: Wrapper executables.
                                                              (line   6)
* wrapper scripts for programs:          Linking executables. (line  71)

