Previous: Options, Up: Invocation [Contents][Index]
You can change the behaviour of ld
with the environment variables GNUTARGET
, LDEMULATION
and COLLECT_NO_DEMANGLE
.
GNUTARGET
determines the input-file object format if you dont use -b (or its synonym --format). Its value should be one of the BFD names for an input format (see BFD). If there is no GNUTARGET
in the environment, ld
uses the natural format of the target. If GNUTARGET
is set to default
then BFD attempts to discover the input format by examining binary input files; this method often succeeds, but there are potential ambiguities, since there is no method of ensuring that the magic number used to specify object-file formats is unique. However, the configuration procedure for BFD on each system places the conventional format for that system first in the search-list, so ambiguities are resolved in favor of convention.
LDEMULATION
determines the default emulation if you dont use the -m option. The emulation can affect various aspects of linker behaviour, particularly the default linker script. You can list the available emulations with the --verbose or -V options. If the -m option is not used, and the LDEMULATION
environment variable is not defined, the default emulation depends upon how the linker was configured.
Normally, the linker will default to demangling symbols. However, if COLLECT_NO_DEMANGLE
is set in the environment, then it will default to not demangling symbols. This environment variable is used in a similar fashion by the gcc
linker wrapper program. The default may be overridden by the --demangle and --no-demangle options.
Previous: Options, Up: Invocation [Contents][Index]