blob: d2efffcc30072718bc435ad473ab5fe717ff4cfb [file] [log] [blame]
This is, produced by makeinfo version 4.0 from ./ld.texinfo.
* Ld: (ld). The GNU linker.
This file documents the GNU linker LD version 2.11.2.
Copyright (C) 1991, 92, 93, 94, 95, 96, 97, 98, 99, 2000 Free
Software Foundation, Inc.

File:, Node: Top, Next: Overview, Up: (dir)
Using ld
This file documents the GNU linker ld version 2.11.2.
This document is distributed under the terms of the GNU Free
Documentation License. A copy of the license is included in the
section entitled "GNU Free Documentation License".
* Menu:
* Overview:: Overview
* Invocation:: Invocation
* Scripts:: Linker Scripts
* Machine Dependent:: Machine Dependent Features
* Reporting Bugs:: Reporting Bugs
* MRI:: MRI Compatible Script Files
* GNU Free Documentation License:: GNU Free Documentation License
* Index:: Index

File:, Node: Overview, Next: Invocation, Prev: Top, Up: Top
`ld' combines a number of object and archive files, relocates their
data and ties up symbol references. Usually the last step in compiling
a program is to run `ld'.
`ld' accepts Linker Command Language files written in a superset of
AT&T's Link Editor Command Language syntax, to provide explicit and
total control over the linking process.
This version of `ld' uses the general purpose BFD libraries to
operate on object files. This allows `ld' to read, combine, and write
object files in many different formats--for example, COFF or `a.out'.
Different formats may be linked together to produce any available kind
of object file. *Note BFD::, for more information.
Aside from its flexibility, the GNU linker is more helpful than other
linkers in providing diagnostic information. Many linkers abandon
execution immediately upon encountering an error; whenever possible,
`ld' continues executing, allowing you to identify other errors (or, in
some cases, to get an output file in spite of the error).

File:, Node: Invocation, Next: Scripts, Prev: Overview, Up: Top
The GNU linker `ld' is meant to cover a broad range of situations,
and to be as compatible as possible with other linkers. As a result,
you have many choices to control its behavior.
* Menu:
* Options:: Command Line Options
* Environment:: Environment Variables