summaryrefslogtreecommitdiffstats
path: root/contrib/binutils/ld/ld.1
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/binutils/ld/ld.1')
-rw-r--r--contrib/binutils/ld/ld.143
1 files changed, 30 insertions, 13 deletions
diff --git a/contrib/binutils/ld/ld.1 b/contrib/binutils/ld/ld.1
index 272a133..79d5d65 100644
--- a/contrib/binutils/ld/ld.1
+++ b/contrib/binutils/ld/ld.1
@@ -129,7 +129,7 @@
.\" ========================================================================
.\"
.IX Title "LD 1"
-.TH LD 1 "2002-05-11" "binutils-2.12.1" "GNU Development Tools"
+.TH LD 1 "2002-08-05" "binutils-2.12.91" "GNU Development Tools"
.UC
.SH "NAME"
ld \- Using \s-1LD\s0, the \s-1GNU\s0 linker
@@ -175,7 +175,7 @@ object files on a standard, supported Unix system. On such a system, to
link a file \f(CW\*(C`hello.o\*(C'\fR:
.PP
.Vb 1
-\& ld -o I<output> /lib/crt0.o hello.o -lc
+\& ld -o <output> /lib/crt0.o hello.o -lc
.Ve
This tells \fBld\fR to produce a file called \fIoutput\fR as the
result of linking the file \f(CW\*(C`/lib/crt0.o\*(C'\fR with \f(CW\*(C`hello.o\*(C'\fR and
@@ -737,6 +737,7 @@ of this object will ignore any default library search paths.
\&\f(CW\*(C`now\*(C'\fR marks the object with the non-lazy runtime binding.
\&\f(CW\*(C`origin\*(C'\fR marks the object may contain \f(CW$ORIGIN\fR.
\&\f(CW\*(C`defs\*(C'\fR disallows undefined symbols.
+\&\f(CW\*(C`muldefs\*(C'\fR allows multiple definitions.
\&\f(CW\*(C`combreloc\*(C'\fR combines multiple reloc sections and sorts them
to make dynamic symbol lookup caching possible.
\&\f(CW\*(C`nocombreloc\*(C'\fR disables multiple reloc sections combining.
@@ -936,6 +937,15 @@ while linking a large executable.
Normally when creating a non-symbolic shared library, undefined symbols
are allowed and left to be resolved by the runtime loader. These options
disallows such undefined symbols.
+.IP "\fB\-\-allow\-multiple\-definition\fR" 4
+.IX Item "--allow-multiple-definition"
+.PD 0
+.IP "\fB\-z muldefs\fR" 4
+.IX Item "-z muldefs"
+.PD
+Normally when a symbol is defined multiple times, the linker will
+report a fatal error. These options allow multiple definitions and the
+first definition will be used.
.IP "\fB\-\-allow\-shlib\-undefined\fR" 4
.IX Item "--allow-shlib-undefined"
Allow undefined symbols in shared objects even when \-\-no\-undefined is
@@ -1232,9 +1242,9 @@ Turning a common symbol into a reference, because there is already a
definition for the symbol.
.Sp
.Vb 3
-\& I<file>(I<section>): warning: common of `I<symbol>'
+\& <file>(<section>): warning: common of `<symbol>'
\& overridden by definition
-\& I<file>(I<section>): warning: defined here
+\& <file>(<section>): warning: defined here
.Ve
.IP "2." 4
Turning a common symbol into a reference, because a later definition for
@@ -1242,25 +1252,25 @@ the symbol is encountered. This is the same as the previous case,
except that the symbols are encountered in a different order.
.Sp
.Vb 3
-\& I<file>(I<section>): warning: definition of `I<symbol>'
+\& <file>(<section>): warning: definition of `<symbol>'
\& overriding common
-\& I<file>(I<section>): warning: common is here
+\& <file>(<section>): warning: common is here
.Ve
.IP "3." 4
Merging a common symbol with a previous same-sized common symbol.
.Sp
.Vb 3
-\& I<file>(I<section>): warning: multiple common
-\& of `I<symbol>'
-\& I<file>(I<section>): warning: previous common is here
+\& <file>(<section>): warning: multiple common
+\& of `<symbol>'
+\& <file>(<section>): warning: previous common is here
.Ve
.IP "4." 4
Merging a common symbol with a previous larger common symbol.
.Sp
.Vb 3
-\& I<file>(I<section>): warning: common of `I<symbol>'
+\& <file>(<section>): warning: common of `<symbol>'
\& overridden by larger common
-\& I<file>(I<section>): warning: larger common is here
+\& <file>(<section>): warning: larger common is here
.Ve
.IP "5." 4
Merging a common symbol with a previous smaller common symbol. This is
@@ -1268,9 +1278,9 @@ the same as the previous case, except that the symbols are
encountered in a different order.
.Sp
.Vb 3
-\& I<file>(I<section>): warning: common of `I<symbol>'
+\& <file>(<section>): warning: common of `<symbol>'
\& overriding smaller common
-\& I<file>(I<section>): warning: smaller common is here
+\& <file>(<section>): warning: smaller common is here
.Ve
.RE
.RS 4
@@ -1437,6 +1447,13 @@ These cygwin-excludes are: \f(CW\*(C`_cygwin_dll_entry@12\*(C'\fR,
.IX Item "--exclude-symbols symbol,symbol,..."
Specifies a list of symbols which should not be automatically
exported. The symbol names may be delimited by commas or colons.
+.IP "\fB\-\-exclude\-libs\fR \fIlib\fR\fB,\fR\fIlib\fR\fB,...\fR" 4
+.IX Item "--exclude-libs lib,lib,..."
+Specifies a list of archive libraries from which symbols should not be automatically
+exported. The library names may be delimited by commas or colons. Specifying
+\&\f(CW\*(C`\-\-exclude\-libs ALL\*(C'\fR excludes symbols in all archive libraries from
+automatic export. Symbols explicitly listed in a .def file are still exported,
+regardless of this option.
.IP "\fB\-\-file\-alignment\fR" 4
.IX Item "--file-alignment"
Specify the file alignment. Sections in the file will always begin at
OpenPOWER on IntegriCloud