[Top] | [Contents] | [Index] | [ ? ] |
Footnotes
(1)
If you don’t
specify an rpath
, then libtool builds a libtool convenience
archive, not a shared library (see section Linking static libraries).
(2)
However, you should avoid using ‘-L’ or ‘-l’ flags to link against an uninstalled libtool library. Just specify the relative path to the ‘.la’ file, such as ‘../intl/libintl.la’. This is a design decision to eliminate any ambiguity when linking against uninstalled shared libraries.
(3)
And why should we? ‘main.o’ doesn’t directly depend on ‘-lm’ after all.
(4)
Don’t strip static libraries though, or they will be unusable.
(5)
Since GNU Automake 1.5, the flags ‘-dlopen’ or ‘-dlpreopen’ (see section Link mode) can be employed with the ‘program_LDADD’ variable. Unfortunately, older releases didn’t accept these flags, so if you are stuck with an ancient Automake, we recommend quoting the flag itself, and setting ‘program_DEPENDENCIES’ too:
program_LDADD = "-dlopen" libfoo.la program_DEPENDENCIES = libfoo.la
(6)
LT_INIT
requires
that you define the ‘Makefile’ variable top_builddir
in your
‘Makefile.in’. Automake does this automatically, but Autoconf
users should set it to the relative path to the top of your build
directory (‘../..’, for example).
(7)
GNU Image Manipulation Program, for those who haven’t taken the plunge. See http://www.gimp.org/.
(8)
We used to recommend __P
,
__BEGIN_DECLS
and __END_DECLS
. This was bad advice since
symbols (even preprocessor macro names) that begin with an underscore
are reserved for the use of the compiler.
(9)
LIBPATH
on AIX, and SHLIB_PATH
on HP-UX.
(10)
Some platforms, notably Mac OS X,
differentiate between a runtime library that cannot be opened by
lt_dlopen
and a dynamic module that can. For maximum
portability you should try to ensure that you only pass
lt_dlopen
objects that have been compiled with libtool’s
‘-module’ flag.
(11)
This is used for
the host dependent module loading API – shl_load
and
LoadLibrary
for example
(12)
We used to recommend adding the contents of ‘ltdl.m4’ to
‘acinclude.m4’, but with aclocal
from a modern
Automake (1.8 or newer) and this release of libltdl that is not only
unnecessary but makes it easy to forget to upgrade ‘acinclude.m4’
if you move to a different release of libltdl.
(13)
Even if libltdl is installed, ‘LTDL_INIT’ may fail to detect it if libltdl depends on symbols provided by libraries other than the C library.
(14)
All code compiled
for the PowerPC and RS/6000 chips (powerpc-*-*
, powerpcle-*-*
,
and rs6000-*-*
) is position-independent, regardless of the operating
system or compiler suite. So, “regular objects” can be used to build
shared libraries on these systems and no special PIC compiler flags are
required.
[Top] | [Contents] | [Index] | [ ? ] |
This document was generated on December 1, 2011 using texi2html 5.0.