# Introduction

The GNUPro® Toolkit for eCos is a complete solution for C and C++ development for the Matsushita MN10300/AM3x . The tools include the compiler, assembler, linker, and interactive debugger. In addition to this manual, please read "Getting started with eCos ." This document consists of the following sections:

- Introduction

> An introduction to the features of the GNUPro Toolkit for eCos.

- Reference

> Describes the ABI and AM3x-specific attributes of the main GNUPro tools.
> - CygMon (Cygnus ROM Monitor)

- Bibliography

## Tool naming conventions

Cross-development tools in the Cygnus GNUPro Toolkit normally have names that reflect the target processor and the object file format output by the tools (for example, ELF). This makes it possible to install more than one set of tools in the same binary directory, including both native and cross-development tools.
The complete tool name is a three-part hyphenated string. The first part indicates the processor family ('mn10300'). The second part indicates the file format output by the tool ('elf'). The third part is the generic tool name ('gcc'). For example, the GCC compiler for the AM3x is 'mn10300-elf-gcc'.
The AM3x package includes the following supported tools:

Tool Description | Tool Name
GCC compiler | mn10300-elf-gcc
C++ compiler | mn10300-elf-g++
GAS assembler | mn10300-elf-as
GLD linker | mn10300-elf-ld
Binary Utilities | mn10300-elf-ar mn10300-elf-nm mn10300-elf-objcopy mn10300-elf-objdump mn10300-elf-ranlib mn10300-elf-size mn10300-elf-strings mn10300-elf-strip
GDB debugger | mn10300-elf-gdb

The binaries for a Windows NT hosted toolchain are installed with an '.exe' suffix. However, the '.exe' suffix does not need to be specified when running the executable.

## Toolkit features

The following describes features of the GNUPro Toolkit for the AM3x.

### Processor version(s)

Matsushita MN10300

This part is also sold under the Panasonic or Pana-X brand name, as well as under the AM31 part number. Wherever Matsushita or 10300 are used in this document, Panasonic or Pana-X should be considered identical.

Matsushita AM33
Code compiled to run on the MN10300/AM31, should also run on the AM33. However, code compiled for the AM33 may not run on the MN10300/AM31.

### Targets Supported

Matsushita MN10300 evaluation board

Matsushita AM33 STB System Reference Board

GNUPro Instruction Set Simulator with architectural extensions to support eCos execution for the MN10300/AM31

All targets run in little-endian mode.

### Hosts Supported

CPU | Operating System | Vendor
x86 | Windows NT 4.0 | Microsoft

### Object file format

The AM3x tools support the ELF object file format. Refer to Chapter 4, System V Application Binary Interface (Prentice Hall, 1990.). Use 'ld' (refer to Using LD in GNUPro Utilities ) or 'objcopy`'` (refer to The GNU Binary Utilities in GNUPro Utilities ) to produce S-records.

## GNUPro on Windows NT

### Windows environment settings

The Windows NT hosted toolchain requires the following environmental settings to function properly. Assuming the release is installed in: C:\Program Files\Cygnus Solutions\eCos\ecos-99r1-990828

> SET PROOT=C:\Program Files\Cygnus Solutions\eCos\ecos-99r1-990828
> SET PATH=%PROOT%\H-i686-cygwin32\bin;%PATH%
> SET INFOPATH=%PROOT%\info
> REM Set TMPDIR to point to a ramdisk if you have one
> SET TMPDIR=C:\TEMP

A working environment can be established by using the following shortcut from the Windows Start menu:
Programs->Cygnus eCos->eCos Development Environment
This will bring up a window running "bash", and your Windows environment will be automatically set up.

### Case Sensitivity

The following strings are case sensitive under Windows NT:

- command line options
- assembler labels
- linker script commands
- section names
- file names within makefiles

The following strings are not case sensitive under Windows NT:

- gdb commands
- assembler instructions and register names

Case sensitivity for Windows NT is dependent on system configuration. By default, file names under Windows NT are not case sensitive.