Subject: new ld
To: None <current-users@sun-lamp.cs.berkeley.edu>
From: Paul Kranenburg <pk@cs.few.eur.nl>
List: current-users
Date: 01/25/1994 17:52:01
Within the next few days I'll check in a new set of ld/ld.so sources.
These will take advantage of the `.type' directives which are generated
by gcc for some time now. This auxiliary type info is stored within
shared libraries' symbol tables and is used during link-editing to
discriminate cleanly between data and functions (which may both be decorated
with an N_TEXT symbol type, eg. sys_errlist[], _ctype_[], etc.).
Since the linker now relies on this information in shared libraries, it is
mandatory to completely rebuild all shared libraries before using ld to
link programs. Because normally an `ld -x -r' is done on object files that
go into a library, it is not sufficient to just re-link the shared libraries;
all object files must be re-compiled as well.
Fortunately, existing programs run fine with the newly-built libraries, so
there's no need to immediately do a "make world", nor is it necessary to
change the library version numbers.
If you want to be careful and try things out first (recommended), install
the shared libraries in a different directory or with an extra version
number added (eg. libc.so.3.0.1). Remember to run ldconfig(8) and/or set
your LD_LIBRARY_PATH variable.
-pk
------------------------------------------------------------------------------