Learn how easy it is to sync an existing GitHub or Google Code repo to a SourceForge project! See Demo


Tree [5c1ff2] master /

File Date Author Commit
apps 2015-02-08 Rolf Rolf [5c1ff2] Extend RTS to support tagged types.
avr 2015-02-08 Rolf Rolf [5c1ff2] Extend RTS to support tagged types.
doc 2010-07-17 Rolf Rolf [1fba0b] initial check-in of the SVN trunk after release...
gcc-3.4-rts 2010-07-17 Rolf Rolf [1fba0b] initial check-in of the SVN trunk after release...
gcc-4.3-rts 2011-01-08 Tero Koskinen Tero Koskinen [6d3eb3] Allow gcc-4.3-rts to compile with avr-gcc 4.3.4.
gcc-4.7-rts 2012-05-03 Rolf Rolf [df4067] applied Tero's patches for a clean compile.
gcc-4.9-rts 2015-02-08 Rolf Rolf [5c1ff2] Extend RTS to support tagged types.
patches 2012-04-30 Rolf Rolf [3da626] patch to make static libraries work
tools 2012-08-25 Rolf Ebert Rolf Ebert [c22b02] added README, fixed build script
.gitignore 2010-09-30 Rolf Rolf [cb4afd] ignore typical files generated when building bi...
Makefile 2012-04-21 Rolf Rolf [317745] Cleanup of the Makefile for building the RTS.
README 2012-08-25 Rolf Ebert Rolf Ebert [c22b02] added README, fixed build script
configure 2010-07-18 Rolf Rolf [e90020] import HEAD of the R1.1 branch
excldevs.mk 2011-02-04 Tero Koskinen Tero Koskinen [326e77] Compile atmega2560 and attiny13a parts by default.

Read Me

This is AVR-Ada V1.2.1

The AVR-Ada project provides the gcc based Ada compiler GNAT for the
AVR 8-bit microcontrollers. This includes:
- the Ada compiler (GNAT) based on the existing AVR and Ada support in gcc
- a small Ada run time system and useful AVR specific support libraries
- documentation and some sample programs

Building and Installing an Ada Cross Compiler Tool Suite


Get the following source packages

    binutils (assembler, linker, etc.): 2.20.1
    gcc (compiler): 4.7.1
    avr-libc (C run time system, start-up code, linker scripts): 1.8.x
    avr-ada (Ada run time system, gcc and binutils patches): 1.2.x

You need a native GNAT compiler on your system. Nowadays almost all
Linux distributions contain the Ada enabled gcc. If your system
compiler is not yet gcc-4.7, get the latest gcc-4.7 sources and build
a new native compiler first (for at least C and Ada). On Windows use
the MinGW installer mingw-get to install gcc with Ada support. It
works well to rebuild gcc-4.7.

You need the GNU binutils and the avr-libc library. The first is
available on any GNU mirror.  Take version 2.20.1.  The latter is
available from the AVR libc home page. Any version after 1.0 will
do. I use the release 1.8.0.

The gcc sources must be from the 4.7 branch of gcc. I did all my tests
and modifications on gcc-4.7.1.

Get the latest binutils and gcc patches from the AVR-Ada project. They
are included in the full AVR-Ada source release in the directories
patches/gcc/4.7.1/ and patches/binutils/2.20.1/.

Building the compiler

Have a look at the shell script build-avr-ada.sh in the tools/build/
directory. It automates the build process and we use it exclusively
for building our compilers and tools. For a full description of how to
use the current build script see the [BuildScript] page in the Wiki.

Install the Ada Run Time System and AVR Support Libraries

After building and installing the Ada cross compiler you need a basic
run time system (RTS).

After unpacking the AVR-Ada source distribution, run configure and
make in the top level directory.  Configure determines the
installation path (PREFIX) from the installed gcc.  See the comments
in the Makefile for the different make targets.  You should first
build and install the RTS, then the AVR libraries.  The RTS will be
installed in the gcc tree, the AVR libraries will be installed in
PREFIX/avr/ada.  Make sure that you have write permissions in these

make build_rts
make install_rts

make build_libs
make install_libs

Documentation and getting help

Please refer to the AVR-Ada wiki pages at


They contain all the available documentation.  If you think that
something is missing, plase add it yourself (if happen to know).  All
SF users have write permission in the wiki.  If some questions remain
open, feel free to ask your question on the avr-ada-devel mailing
list.  We request you to subscribe to list, though, at

News in AVR-Ada V1.2

Please refer to the release notes at