| 1 | This is ld.info, produced by makeinfo version 4.3 from ./ld.texinfo. | 
|---|
| 2 |  | 
|---|
| 3 | START-INFO-DIR-ENTRY | 
|---|
| 4 | * Ld: (ld).                       The GNU linker. | 
|---|
| 5 | END-INFO-DIR-ENTRY | 
|---|
| 6 |  | 
|---|
| 7 | This file documents the GNU linker LD version 2.14. | 
|---|
| 8 |  | 
|---|
| 9 | Copyright (C) 1991, 92, 93, 94, 95, 96, 97, 98, 99, 2000, 2001, | 
|---|
| 10 | 2002, 2003 Free Software Foundation, Inc. | 
|---|
| 11 |  | 
|---|
| 12 |  | 
|---|
| 13 | File: ld.info,  Node: Top,  Next: Overview,  Up: (dir) | 
|---|
| 14 |  | 
|---|
| 15 | Using ld | 
|---|
| 16 | ******** | 
|---|
| 17 |  | 
|---|
| 18 | This file documents the GNU linker ld version 2.14. | 
|---|
| 19 |  | 
|---|
| 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". | 
|---|
| 23 |  | 
|---|
| 24 | * Menu: | 
|---|
| 25 |  | 
|---|
| 26 | * Overview::                    Overview | 
|---|
| 27 | * Invocation::                  Invocation | 
|---|
| 28 | * Scripts::                     Linker Scripts | 
|---|
| 29 |  | 
|---|
| 30 | * Machine Dependent::           Machine Dependent Features | 
|---|
| 31 |  | 
|---|
| 32 | * BFD::                         BFD | 
|---|
| 33 |  | 
|---|
| 34 | * Reporting Bugs::              Reporting Bugs | 
|---|
| 35 | * MRI::                         MRI Compatible Script Files | 
|---|
| 36 | * GNU Free Documentation License::  GNU Free Documentation License | 
|---|
| 37 | * Index::                       Index | 
|---|
| 38 |  | 
|---|
| 39 |  | 
|---|
| 40 | File: ld.info,  Node: Overview,  Next: Invocation,  Prev: Top,  Up: Top | 
|---|
| 41 |  | 
|---|
| 42 | Overview | 
|---|
| 43 | ******** | 
|---|
| 44 |  | 
|---|
| 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'. | 
|---|
| 48 |  | 
|---|
| 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. | 
|---|
| 52 |  | 
|---|
| 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. | 
|---|
| 58 |  | 
|---|
| 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). | 
|---|
| 64 |  | 
|---|
| 65 |  | 
|---|
| 66 | File: ld.info,  Node: Invocation,  Next: Scripts,  Prev: Overview,  Up: Top | 
|---|
| 67 |  | 
|---|
| 68 | Invocation | 
|---|
| 69 | ********** | 
|---|
| 70 |  | 
|---|
| 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. | 
|---|
| 74 |  | 
|---|
| 75 | * Menu: | 
|---|
| 76 |  | 
|---|
| 77 | * Options::                     Command Line Options | 
|---|
| 78 | * Environment::                 Environment Variables | 
|---|
| 79 |  | 
|---|