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

Other eld Processing
eld Manual—527255-009
4-4
Additional rules about -alf
•
The location of the existing loadfile.
•
The places specified in -L options.
•
The places specified by the DT_RPATH entry of the .dynamic section.
•
On OSS, if the existing file is a 64-bit data model: /lib64, /usr/lib64, and
/usr/local/lib64.
•
On OSS, /lib, /usr/lib, and /usr/local/lib.
•
On Guardian or OSS, if the existing file is a 64-bit data model: $SYSTEM.YDLL.
•
On Guardian or OSS: $SYSTEM.ZDLL.
The -nostdlib option stops the -alf option from looking for public libraries or in
the standard places (i.e., the last two items in the above list), the same as when this
option is used when the linker is creating a new loadfile.
The search path makes use of the information in DT_TANDEM_RPATH_FIRST and
DT_RPATH entries of the .dynamic section so that its search path is similar to that of
rld, and so that the user need not specify any -L or -first_L options. However,
this can only be expected to work when -alf is used in the same environment as
where the program will run, which means not only that it is also the HP NonStop
operating system platform, but that it is the proper version of the operating system, etc.
The -L and -first_L options are provided so that the -alf option can be used
when the places specified by entries in the .dynamic section would not work.
It is also possible to specify the -rld_L and -rld_first_L options with -alf. As
with the linker’s normal processing of these options, you can specify them multiple
times, and the linker concatenates the strings given. Unlike the linker’s normal
processing of these options, the -alf option does not concatenate these strings with
the ones found in the dt_rpath and dt_tandem_rpath_first entries of the .dynamic
sections of other DLLs that it sees. Instead, if values are specified for -rld_L or -
rld_first_L with -alf, that is used instead of the strings found in the dt_rpath and
dt_tandem_rpath_first entries of the loadfile being updated by the -alf option, when
the -alf option is looking for DLLs. The contents of the dt_rpath and
dt_t
andem_rpath_first entries of the .dynamic section of the loadfile being updated by
the -alf option are not updated by these options. The only way to update these
entries within the loadfile is to relink it from scratch.
Note that the linker still looks in all the places specified above, regardless of the
platform. For example, even though it may not accomplish anything, the linker does
look in the places specified by the dt_rpath and dt_tandem_rpath_first entries of the
.dynamic section, even when running on the PC platform. Colons are still used to
separate names in these entries, even on the PC platform.
If the limit_runtime_paths bit is set in the flags field of the .tandem_info section of the
loadfile then the -alf option does not look in the location of the existing loadfile.










