eld Manual
Table Of Contents
- eld Manual
- Legal Notices
- Contents
- What’s New in This Manual
- Manual Information
- New and Changed Information
- About This Manual
- Notation Conventions
- 1 Introduction to eld
- 2 eld Input and Output
- 3 Binding of References
- Overview
- Presetting Loadfiles
- To Preset or Not to Preset, and Creation of the LIC
- Handling Unresolved References
- Using User Libraries
- Creating Import Libraries
- Ignoring Optional Libraries
- Merging Symbols Found in Input Linkfiles
- Accepting Multiply-Defined Symbols
- Using the -cross_dll_cleanup option
- Specifying Which Symbols to Export, and Creating the Export Digest
- Public Libraries and DLLs
- The Public Library Registry
- 4 Other eld Processing
- Adjusting Loadfiles: The -alf Option
- Additional rules about -alf
- The -set and -change Options
- eld Functionality for 64-Bit
- Checking the C++ Language Dialect
- Renaming Symbols
- Creating Linker-Defined Symbols
- Updating Or Stripping DWARF Symbol Table Information
- Modifying the Data Sections that Contain Stack Unwinding Information
- Creating the MCB
- Processing of Floating Point Versions and Data Models
- Specification of the Main Entry Point
- Specifying Runtime Search Path Information for DLLs
- Merging Source RTDUs
- 5 Summary of Linker Options
- 6 Output Listings and Error Handling
- A TNS/E Native Object Files
- Glossary
- Index
Introduction to eld
eld Manual—527255-009
1-6
The Linker Command Stream
•
Repeatable options are options such that each occurrence of the option is
independent, such as providing another element of a list of information or making
the linker do a certain activity again.
•
Toggle options are options that modify the linker’s behavior for the remainder of the
command stream, or until toggled again.
•
One-time options are everything else.
Descriptions of repeatable options and toggle options within this manual explain the
significance of each occurrence of the option. If this manual does not explain why an
option might be given more than once in the command stream, it is a one-time option.
It is okay to specify a one-time option more than once if it doesn’t take any parameters,
and the repeated occurrences are ignored by the linker. It is similarly okay if the option
has a parameter and you specify the option more than once with the same parameter,
or with another parameter that is a “synonym” of it. eld reports an error if you specify a
one-time option more than once with non-synonymous parameters. With regard to one-
time options that take string parameters, “synonymous” means exactly the same,
including the same case of all the characters, even in situations (e.g., filenames on
Guardian) where the case wouldn’t be significant. Except, because the parameter to -
set libname is converted to upper case by the linker anyway, this particular check
is not case sensitive. On the other hand, when there is a numerical parameter,
“synonymous” means that the value comes out the same, regardless of how it is
written.
With regard to the -set option, each combination of the -set option with one of its
attributes is treated as a single one-time option as mentioned in the previous
paragraph. In other words, there are no restrictions on how many times the -set
option can be given with different attributes. If -set is specified more than once with
the same attribute, and a value is required, that is okay if a synonymous value is given
each time, otherwise eld reports an error.
With regard to the -b option, this is really treated as two different options. There is a
one-time -b option, whose possible parameter values are globalized, localized,
semi_globalized, and symbolic, where symbolic is a synonym for
semi_globalized. And there is also a toggle -b option, where the possible
parameter values are dllsonly, dynamic, and static.
Throughout this manual, rules are given for which combinations of options are legal.
Even if not stated explicitly,
eld reports an error if you specify multiple options that are
mutually exclusive from their descriptions.
Whenever the name of an option is a single letter and the option has a single
parameter it is permissible to omit the space between the option name and the
parameter, combining them into a single token. This would be ambiguous for an option
that takes a filename or symbol name as a parameter when the result is the name of
some other option, so the rule is that it is only permitted to leave out the space if this
does not cause such an ambiguity. For instance, if the output file is to be named b, it
can be specified as either -o b or -ob. However, if the output file is to be named bey
then it must be written -o bey because there is another option named -obey.










