RealView ® Developer Kit Linkerand Utilities Guide

Version 1.0

Table of Contents

About this book
Intended audience
Using this book
Typographical conventions
Further reading
Feedback on RealView Developer Kit
Feedback on this book
1. Introduction
1.1. About the linker and utilities
1.1.1. The linker
1.1.2. fromELF
1.1.3. armar
2. The armlink Command Syntax
2.1. About armlink
2.1.1. Input to armlink
2.1.2. Output from armlink
2.1.3. Summary of armlink options
2.2. armlink command syntax
3. Using the Basic Linker Functionality
3.1. Specifying the image structure
3.1.1. Building blocks for objects and images
3.1.2. Load view and execution view of an image
3.1.3. Specifying an image memory map
3.1.4. Image entry points
3.2. Section placement
3.2.1. Ordering input sectionsby attribute
3.2.2. Using FIRST and LASTto place sections
3.2.3. Aligning sections
3.3. Optimizations and modifications
3.3.1. Common debug section elimination
3.3.2. Common section elimination
3.3.3. Unused section elimination
3.3.4. Veneer generation
3.3.5. Reuse of veneers with overlay execution regions
3.4. Using command-line options to createsimple images
3.4.1. Type 1, one load region and contiguousoutput regions
3.4.2. Type 2, one load regionand non contiguous output regions
3.4.3. Type 3, two load regions and noncontiguousoutput regions
4. Accessing Image Symbols
4.1. ARM/Thumb synonyms
4.2. Accessing linker-defined symbols
4.2.1. Region-related symbols
4.2.2. Section-related symbols
4.2.3. Importing linker-defined symbols
4.3. Using $Super$$ and $Sub$$ to overridesymbol definitions
5. Using Scatter-loading description files
5.1. About scatter-loading
5.1.1. Symbols defined for scatter-loading
5.1.2. When to use scatter-loading
5.1.3. Command-line option
5.1.4. Images with a simple memory map
5.1.5. Images with a complex memory map
5.2. The formal syntax of the scatter-loadingdescription file
5.2.1. BNF notation and syntax
5.2.2. Overview of the syntax of scatter-loading descriptionfiles
5.2.3. Load region description
5.2.4. Execution region description
5.2.5. Input section description
5.2.6. Resolving multiplematches
5.3. Examples of specifying region andsection addresses
5.3.1. Selecting veneer input sections in scatter-loadingdescriptions
5.3.2. Creating root executionregions
5.3.3. Placing regions at fixed addresses
5.3.4. Reserving an empty region
5.4. Equivalent scatter-loading descriptionsfor simple images
5.4.1. Type 1
5.4.2. Type 2
5.4.3. Type 3
6. Creating and Using libraries
6.1. About libraries
6.2. Library searching, selection, andscanning
6.2.1. Searching for user libraries
6.2.2. Searching for ARM libraries
6.2.3. Selecting ARM library variants
6.2.4. Scanning the libraries
6.3. The ARM librarian
6.3.1. Librarian command-line options
6.3.2. Examples
7. Using fromELF
7.1. About fromELF
7.1.1. Image structure
7.2. fromELF command-line options
7.3. Examples of fromELF usage
7.3.1. Producing a plain binary file

Proprietary Notice

Words and logos marked with ® or ™ are registered trademarks or trademarksowned by ARM Limited. Other brands and names mentioned herein maybe the trademarks of their respective owners.

Neither the whole nor any part of the information containedin, or the product described in, this document may be adapted orreproduced in any material form except with the prior written permissionof the copyright holder.

The product described in this document is subject to continuousdevelopments and improvements. All particulars of the product andits use contained in this document are given by ARM in good faith.However, all warranties implied or expressed, including but notlimited to implied warranties of merchantability, or fitness forpurpose, are excluded.

This document is intended only to assist the reader in theuse of the product. ARM Limited shall not be liable for any lossor damage arising from the use of any information in this document,or any error or omission in such information, or any incorrect useof the product.


This document is Non-Confidential. The right to use, copyand disclose this document may be subject to license restrictionsin accordance with the terms of the agreement entered into by ARMand the party that ARM delivered this document to.

Product Status

The information in this document is final, that is for a developedproduct.

Revision History
Revision A May 2003 Release for RVDK v1.0
Revision B March2004 Release for RVDK v1.0.1
Copyright © 2003, 2004 ARM Limited. All rights reserved. ARM DUI 0233B