LD: Top

Table of Contents

  • 1 Overview
  • 2 Invocation
    • 2.1 Command Line Options
      • 2.1.1 Options Specific to i386 PE Targets
      • 2.1.2 Options specific to C6X uClinux targets
      • 2.1.3 Options specific to Motorola 68HC11 and 68HC12 targets
      • 2.1.4 Options specific to Motorola 68K target
      • 2.1.5 Options specific to MIPS targets
    • 2.2 Environment Variables
  • 3 Linker Scripts
    • 3.1 Basic Linker Script Concepts
    • 3.2 Linker Script Format
    • 3.3 Simple Linker Script Example
    • 3.4 Simple Linker Script Commands
      • 3.4.1 Setting the Entry Point
      • 3.4.2 Commands Dealing with Files
      • 3.4.3 Commands Dealing with Object File Formats
      • 3.4.4 Assign alias names to memory regions
      • 3.4.5 Other Linker Script Commands
    • 3.5 Assigning Values to Symbols
      • 3.5.1 Simple Assignments
      • 3.5.2 HIDDEN
      • 3.5.3 PROVIDE
      • 3.5.4 PROVIDE_HIDDEN
      • 3.5.5 Source Code Reference
    • 3.6 SECTIONS Command
      • 3.6.1 Output Section Description
      • 3.6.2 Output Section Name
      • 3.6.3 Output Section Address
      • 3.6.4 Input Section Description
        • 3.6.4.1 Input Section Basics
        • 3.6.4.2 Input Section Wildcard Patterns
        • 3.6.4.3 Input Section for Common Symbols
        • 3.6.4.4 Input Section and Garbage Collection
        • 3.6.4.5 Input Section Example
      • 3.6.5 Output Section Data
      • 3.6.6 Output Section Keywords
      • 3.6.7 Output Section Discarding
      • 3.6.8 Output Section Attributes
        • 3.6.8.1 Output Section Type
        • 3.6.8.2 Output Section LMA
        • 3.6.8.3 Forced Output Alignment
        • 3.6.8.4 Forced Input Alignment
        • 3.6.8.5 Output Section Constraint
        • 3.6.8.6 Output Section Region
        • 3.6.8.7 Output Section Phdr
        • 3.6.8.8 Output Section Fill
      • 3.6.9 Overlay Description
    • 3.7 MEMORY Command
    • 3.8 PHDRS Command
    • 3.9 VERSION Command
    • 3.10 Expressions in Linker Scripts
      • 3.10.1 Constants
      • 3.10.2 Symbolic Constants
      • 3.10.3 Symbol Names
      • 3.10.4 Orphan Sections
      • 3.10.5 The Location Counter
      • 3.10.6 Operators
      • 3.10.7 Evaluation
      • 3.10.8 The Section of an Expression
      • 3.10.9 Builtin Functions
    • 3.11 Implicit Linker Scripts
  • 4 Machine Dependent Features
    • 4.1 ld and the H8/300
    • 4.2 ld and the Intel 960 Family
    • 4.3 ld and the Motorola 68HC11 and 68HC12 families
      • 4.3.1 Linker Relaxation
      • 4.3.2 Trampoline Generation
    • 4.4 ld and the ARM family
    • 4.5 ld and HPPA 32-bit ELF Support
    • 4.6 ld and the Motorola 68K family
    • 4.7 ld and the MIPS family
    • 4.8 ld and MMIX
    • 4.9 ld and MSP430
    • 4.10 ld and NDS32
    • 4.11 ld and the Altera Nios II
    • 4.12 ld and PowerPC 32-bit ELF Support
    • 4.13 ld and PowerPC64 64-bit ELF Support
    • 4.14 ld and S/390 ELF Support
    • 4.15 ld and SPU ELF Support
    • 4.16 ld’s Support for Various TI COFF Versions
    • 4.17 ld and WIN32 (cygwin/mingw)
    • 4.18 ld and Xtensa Processors
  • 5 BFD
    • 5.1 How It Works: An Outline of BFD
      • 5.1.1 Information Loss
      • 5.1.2 The BFD canonical object-file format
  • 6 Reporting Bugs
    • 6.1 Have You Found a Bug?
    • 6.2 How to Report Bugs
  • Appendix A MRI Compatible Script Files
  • Appendix B GNU Free Documentation License
  • LD Index

Next: Overview, Up: (dir)   [Contents][Index]


LD

This file documents the GNU linker ld (GNU Binutils) version 2.30.

This document is distributed under the terms of the GNU Free Documentation License version 1.3. A copy of the license is included in the section entitled “GNU Free Documentation License”.

• Overview:    Overview
• Invocation:    Invocation
• Scripts:    Linker Scripts
• Machine Dependent:    Machine Dependent Features
• BFD:    BFD

• Reporting Bugs:    Reporting Bugs
• MRI:    MRI Compatible Script Files
• GNU Free Documentation License:    GNU Free Documentation License
• LD Index:    LD Index

Next: Overview, Up: (dir)   [Contents][Index]