LARM User's Guide

Discontinued

Purpose of the Linker

The purpose of the LARM Linker is to:

  • Link object modules generated by the assembler and compiler.
  • Link object modules stored in library files generated with LIBARM.
  • Build real-time applications that use the ARTXARM real-time kernels.

To accomplish these objectives, the linker links object modules and resolves references between them. This allows you to create large programs spread over a number of source modules, object modules, and libraries.

In operation, the LARM Linker:

  • Combines relocatable program modules into a single absolute module.
  • Automatically includes modules from library files.
  • Combines relocatable partial segments (with the same name) into a single segment.
  • Allocates and manipulates the necessary memory for all relocatable and absolute segments.
  • Resolves external symbols and public symbols.
  • Defines absolute addresses and computes the addresses of relocatable segments.
  • Produces an absolute object file that contains the entire program.
  • Produces a listing file that contains:
    • Information about the link/locate process,
    • Program symbols,
    • A cross-reference of external and public symbols.
  • Detects errors found on the command-line or during the link/locate process.
  • Supports the ARTXARM Real-Time Kernel.