1.1.1. Components of the SDT

The ARM Software Development Toolkit consists of the following major components:

These are described in more detail below.

Command-line development tools

The following command-line development tools are provided:

armcc

The ARM C compiler. The compiler is tested against the Plum Hall C Validation Suite for ANSI conformance. It compiles ANSI or PCC source into 32-bit ARM code.

tcc

The Thumb C compiler. The compiler is tested against the Plum Hall C Validation Suite for ANSI conformance. It compiles ANSI or PCC source into 16-bit Thumb code.

armasm

The ARM and Thumb assembler. This assembles both ARM assembly language and Thumb assembly language source.

armlink

The ARM linker. This combines the contents of one or more object files with selected parts of one or more object libraries to produce an executable program. The ARM linker creates ELF executable images.

armsd

The ARM and Thumb symbolic debugger. This enables source level debugging of programs. You can single step through C or assembly language source, set breakpoints and watchpoints, and examine program variables or memory.

Windows development tools

The following windows development tools are provided:

ADW

The ARM Debugger for Windows. This provides a full Windows environment for debugging your C, C++, and assembly language source.

APM

The ARM Project Manager. This is a graphical user interface tool that automates the routine operations of managing source files and building your software development projects. APM helps you to construct the environment, and specify the procedures needed to build your software.

Utilities

The following utility tools are provided to support the main development tools:

fromELF

The ARM image conversion utility. This accepts ELF format input files and converts them to a variety of output formats, including AIF, plain binary, Extended Intellec Hex (IHF) format, Motorola 32-bit S record format, and Intel Hex 32 format.

armprof

The ARM profiler displays an execution profile of a program from a profile data file generated by an ARM debugger.

armlib

The ARM librarian enables sets of AOF files to be collected together and maintained in libraries. You can pass such a library to the linker in place of several AOF files.

decaof

The ARM Object Format decoder decodes AOF files such as those produced by armasm and armcc.

decaxf

The ARM Executable Format decoder decodes executable files such as those produced by armlink.

topcc

The ANSI to PCC C Translator helps to translate C programs and headers from ANSI C into PCC C, primarily by rewriting top-level function prototypes.

topcc is available for UNIX platforms only, not for Windows.

Supporting software

The following support software is provided to enable you to debug your programs, either under emulation, or on ARM-based hardware.

ARMulator

The ARM core emulator. This provides instruction accurate emulation of ARM processors, and enables ARM and Thumb executable programs to be run on non-native hardware. The ARMulator is integrated with the ARM debuggers.

Angel

The ARM debug monitor. Angel runs on target development hardware and enables you to develop and debug applications running on ARM-based hardware. Angel can debug applications running in either ARM state or Thumb state.

Copyright © 1997, 1998 ARM Limited. All rights reserved.ARM DUI 0040D
Non-Confidential