From man page ld(1) (snv_99 box):
....
-B direct | nodirect
These options govern direct binding. -B direct estab-
lishes direct binding information by recording the rela-
tionship between each symbol reference together with the
dependency that provides the definition. In addition,
direct binding information is established between each
symbol reference and an associated definition within the
object being created. The runtime linker uses this
information to search directly for a symbol in the asso-
ciated object rather than to carry out a default symbol
search.
Direct binding information can only be established to
dependencies specified with the link-edit. Thus, you
should use the -z defs option. Objects that wish to
interpose on symbols in a direct binding environment
should identify themselves as interposers with the -z
interpose option. The use of -B direct enables -z lazy-
load for all dependencies.
The -B nodirect option prevents any direct binding to
the interfaces offered by the object being created. The
object being created can continue to directly bind to
external interfaces by specifying the -z direct option.
See Appendix D, Direct Bindings, in Linker and Libraries
Guide.
.....
-z interpose
Marks the object as an interposer. At runtime, an object
is identified as an explicit interposer if the object
has been tagged using the -z interpose option. An expli-
cit interposer is also established when an object is
loaded using the LD_PRELOAD environment variable. Impli-
cit interposition can occur because of the load order of
objects, however, this implicit interposition is unknown
to the runtime linker. Explicit interposition can ensure
that interposition takes place regardless of the order
in which objects are loaded. Explicit interposition also
ensures that the runtime linker searches for symbols in
any explicit interposers when direct bindings are in
effect.
.....
Could it be the explanation and a possible solution ?
Serge
Thanks,
Serge
If it's documented that applications on Solaris may no longer link
with their own versions of malloc, that's fine -- I can arrange things
so that bash doesn't try to use it's internal malloc on Solaris 10
and 11.
Chet