HP eld Manual page 53

Table of Contents

Advertisement

eld Input and Output
you enter the -l cre option or if it processes a DLL and as a result finds the name:
zcredll or ycredll in the liblist of the other loadfile.
The Rules to Find Files
This section tells the rules that the linker uses to decide which files to try to find and
open in each directory or subvolume that it is searching. This applies to all the steps
followed by the linker in searching for an archive or DLL, other than the special step for
the public DLLs.
This is the algorithm that the linker uses to look for a file within a directory or
subvolume:
First, the linker looks for a file with the name as it was given in the -l option.
Next, if the platform is not Guardian, and this is not a directory on OSS that is a
Guardian subvolume, and -b static is not in effect, the linker looks for a
filename of the form libx.so, where x was the name specified in the -l
option. This rule is not applicable for instances where the linker is searching for
an indirect DLL. While searching for an indirect DLL, eld searches files with
the name specified in the .liblist section.
Finally, if the platform is not Guardian, and this is not a directory on OSS that is
a Guardian subvolume, and -b dllsonly is not in effect, the linker looks for
a filename of the form libx.a, where x was the name specified in the -l
option.
For example, on OSS, if the linker is given the -l ab option, and it is searching
through an OSS directory that is not a Guardian subvolume, it may find ab, libab.a,
or libab.so. Or, if given the -la.b option, it similarly may find a.b, liba.b.a, or
liba.b.so. On the other hand, if it is searching through a Guardian subvolume on
OSS, and it is given the -lab option, it will only look for ab, not libaba or libabso.
If given the -la.b, it won't look for any of these things in a Guardian subvolume.
When the linker opens a file under the name as it was given in the -l option, if -b
static is in effect then
is in effect then
with the name libx.so,
opens a file with the name libx.a,
The linker does not check whether some of the directory or subvolume names are
syntactically incorrect. It simply discovers that the files with the names constructed as
explained above can't be opened, and then continues. For instance, the user may find
it convenient to use the same search path on several platforms, where the search path
contains some names valid for one host platform, and other names valid for another
host platform. On each host platform, the names valid for that platform may do
something meaningful, and the other ones would be ignored.
reports an error if the file is a DLL, and if -b dllsonly
eld
reports an error if the file is an archive. When the linker opens a file
eld
reports an error if the file isn't a DLL. When the linker
eld
eld Manual—527255-009
reports an error if the file isn't an archive.
eld
2-19
Using Archives

Advertisement

Table of Contents
loading

Table of Contents