eld Manual

Table Of Contents
Other eld Processing
eld Manual527255-009
4-3
Additional rules about -alf
said that the DLL was preset, and that bit isn’t really of any importance in an import
library.
The following are some things that cannot be specified with this option because they
are unconditionally inherited from the existing version of the loadfile:
It is not possible to specify import controls.
It is not possible to say which symbols are exported.
If it is a DLL, it is not possible to say what its DLL name is.
Only one -alf option can be specified in the linker command stream.
Additional rules about the -alf option is given in the following subsection.
Additional rules about -alf
In addition to updating the references within an existing DLL or program to other DLLs,
the -alf option may be used to rebase an existing DLL. It is not possible to rebase a
program.
To rebase a DLL with -alf, specify the -t option to tell the new starting address for
the text segment. The data segment is moved by the same amount that the text
segment is moved.
With the -alf option it is permissible to specify -no_preset. It is also possible for
the -alf option to discover that it can’t preset, for the same reasons as described in
To Preset or Not to Preset, and Creation of the LIC on page 3-7, and the -alf option
acts similarly in that case to what the linker does when it is creating a new loadfile and
discovers that presetting is impossible.
The following are differences between the way the -alf option makes this decision,
and the way it is described in To Preset or Not to Preset, and Creation of the LIC on
page 3-7.
An additional reason that the -alf option cannot preset is that the new LIC would be
too large to fit into the size that the .lic section has in the existing loadfile.
Even if the -alf option is neither rebasing nor presetting, it may still produce
messages about unresolved symbols and it would turn off the EF_TANDEM_PRESET
bit if it previously was on.
The way the -alf option looks for DLLs or import libraries is the same as the way the
linker verifies for them when a file is originally linked the search path for -alf is the
following:
The places specified in -first_L options.
The places specified by the DT_TANDEM_RPATH_FIRST entry of the .dynamic
section.
The public libraries.