1 This is ld.info, produced by makeinfo version 4.3 from ./ld.texinfo.
4 * Ld: (ld). The GNU linker.
7 This file documents the GNU linker LD version 2.13.2.1.
9 Copyright (C) 1991, 92, 93, 94, 95, 96, 97, 98, 99, 2000, 2001, 2002
10 Free Software Foundation, Inc.
13 File: ld.info, Node: Top, Next: Overview, Up: (dir)
18 This file documents the GNU linker ld version 2.13.2.1.
20 This document is distributed under the terms of the GNU Free
21 Documentation License. A copy of the license is included in the
22 section entitled "GNU Free Documentation License".
27 * Invocation:: Invocation
28 * Scripts:: Linker Scripts
30 * Machine Dependent:: Machine Dependent Features
34 * Reporting Bugs:: Reporting Bugs
35 * MRI:: MRI Compatible Script Files
36 * GNU Free Documentation License:: GNU Free Documentation License
40 File: ld.info, Node: Overview, Next: Invocation, Prev: Top, Up: Top
45 `ld' combines a number of object and archive files, relocates their
46 data and ties up symbol references. Usually the last step in compiling
47 a program is to run `ld'.
49 `ld' accepts Linker Command Language files written in a superset of
50 AT&T's Link Editor Command Language syntax, to provide explicit and
51 total control over the linking process.
53 This version of `ld' uses the general purpose BFD libraries to
54 operate on object files. This allows `ld' to read, combine, and write
55 object files in many different formats--for example, COFF or `a.out'.
56 Different formats may be linked together to produce any available kind
57 of object file. *Note BFD::, for more information.
59 Aside from its flexibility, the GNU linker is more helpful than other
60 linkers in providing diagnostic information. Many linkers abandon
61 execution immediately upon encountering an error; whenever possible,
62 `ld' continues executing, allowing you to identify other errors (or, in
63 some cases, to get an output file in spite of the error).
66 File: ld.info, Node: Invocation, Next: Scripts, Prev: Overview, Up: Top
71 The GNU linker `ld' is meant to cover a broad range of situations,
72 and to be as compatible as possible with other linkers. As a result,
73 you have many choices to control its behavior.
77 * Options:: Command Line Options
78 * Environment:: Environment Variables