[ << ] | [ < ] | [ Up ] | [ > ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
1.2 Implementation issues
The following issues need to be addressed in any reusable shared library system, specifically libtool:
- The package installer should be able to control what sort of libraries are built.
-
It can be tricky to run dynamically linked programs whose libraries have
not yet been installed.
LD_LIBRARY_PATH
must be set properly (if it is supported), or programs fail to run. - The system must operate consistently even on hosts that don’t support shared libraries.
- The commands required to build shared libraries may differ wildly from host to host. These need to be determined at configure time in a consistent way.
- It is not always obvious with what prefix or suffix a shared library should be installed. This makes it difficult for ‘Makefile’ rules, since they generally assume that file names are the same from host to host.
- The system needs a simple library version number abstraction, so that shared libraries can be upgraded in place. The programmer should be informed how to design the interfaces to the library to maximize binary compatibility.
-
The install ‘Makefile’ target should warn the package installer to set
the proper environment variables (
LD_LIBRARY_PATH
or equivalent), or runldconfig
.
[ << ] | [ < ] | [ Up ] | [ > ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
This document was generated on December 1, 2011 using texi2html 5.0.