| 1 | This is ld.info, produced by makeinfo version 4.0 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.11.2.
|
|---|
| 8 |
|
|---|
| 9 | Copyright (C) 1991, 92, 93, 94, 95, 96, 97, 98, 99, 2000 Free
|
|---|
| 10 | 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.11.2.
|
|---|
| 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 |
|
|---|