ld_ia.1 (2011 09)

l
ld_ia(1) Integrity Systems Only
ld_ia(1)
NAME
ld_ia: ld - link editor for Integrity systems
SYNOPSIS
The link editor
ld [-bdmnqrstvwxzEGINOPQSTVZ
][-a search][-c filename][-dynamic][
-e epsym]
[
-emit_relocs][-h
symbol]... [-k filename ][-lx file ]... [-l:
library ][-m]
[
-nbucket][bucketsizetype][
-noshared][
-noshared_dynamic
][-o outfile ]
[
-symbolic symbol]... [-u
symbol]... [-y symbol]... [-A name][-B bind]... [
-C n]
[
-D offset][
-Fl][-Fw][-Fz][-G][-L
dir]... [-N][-O][-Pd][-PD
file][-PF file][-Q]
[
-R offset][
-S][-T][+alloc_hidden_commons
][+allowdups][
+[no]allowunsats]
[
+as mode][+b path_list ][
+cdp oldpath:newpath][
+cg path][+compat]
[
+[no]concatrpath
][+copyobjdebug
][+[no]defaultrpath
][+df file]
[
+dbgfile filename ][+dumpextern filename ][
+dpv][+e symbol ]... [+ee symbol]...
[
+fb][+fbu]
[+filter shared_library_path][
+fini function ]... [
+[no]forceload]
[
+gstbuckets size][+gst][
+gstsize size][+h internal_name][
+help]
[
+hideallsymbols
][+ild][+ildnowarn][+ildpad
percentage ][+ildrelink]
[
+init function ]... [+instrumenter
filename ][+interp filename ][
+interposer][+k]
[
+[no]lazyload
][+mergeseg][+n][+nobss][
+nocopyobjdebug][
+nodynhash]
[
+nodefaultmap][+noenvvar
][+[no]mmap][+noobjdebug]
[
+noprocelim_sym
symbol]... [+nosectionmerge][+nosmartbind][+nosrcpos]
[
+nosymb symbol]... [+objdebugonly
][+origin shared_library_name]
[
+paddata pagesize][+padtext pagesize][+pd size][+pdzero][+pgm
name]
[
+pi size][+plabel_cache
flag][+profilebucketsize 16|32][+protect][+rpath-
first]
[+s][+std][+stripunwind][+tools][+v[no]shlibunsats
]
[
+vallcompatwarnings
][+v[no]compatwarnings][+vtype type]
[
+FP flag][+I symbol ]... [+O[no]dynopt][+O[no]fastaccess
][+O[no]procelim]
[
+Oreusedir=dir][+Oselectivepercent
n][+Oselectivesize size][+Oselec-
tiveO3]
[+Ostaticprediction
]
Remarks
This manpage describes
ld on Integrity systems. For ld on PA-RISC systems, see ld_pa (1).
DESCRIPTION
ld takes one or more object files or libraries as input and combines them to produce a single (usually exe-
cutable) file. In doing so it resolves references to external symbols, assigns final addresses to procedures
and variables, revises code and data to reflect new addresses (a process called "relocation") and updates
symbolic debug information when present in the file.
By default,
ld produces an executable file that can be run by the HP-UX loader exec()
(see exec(2)).
Alternatively, the linker can generate a relocatable file that is suitable for further processing by
ld (see
-r below). It can also generate a shared library (see -b below). The linker marks the output file non-
executable if there are any duplicate symbols or any unresolved external references remain.
ld may or may not generate an output file (see +k option) if any other errors occur during its operation.
ld recognizes three kinds of input files:
object files created by the compilers, assembler, or linker (also known as .o files),
shared libraries created by the linker, and
archives of object files (called archive libraries).
An archive library contains a table of all the externally-visible symbols from its component object files.
(The archiver command ar (1) creates and maintains this index.)
ld uses this table to resolve references
to external symbols.
ld processes files in the same order as they appear on the command line. It includes code and data from
an archive library element if and only if that object module provides a definition for a currently
unresolved reference within the user’s program (see +[no]forceload). It is common practice to list
libraries following the names of all simple object files on the command line.
Code and data from shared libraries is never copied into an executable program.
HP-UX 11i Version 3: September 2011 1 Hewlett-Packard Company 1

Summary of content (22 pages)