Building avr-gcc (gcc version 2.95.2) Install and setup AVR assembler and linker. avr-gcc can work with AVA or with GNU binutils (GNU as and GNU ld). - ava-0.3b-0801.src.tar.gz or later version. - binutils-2.9.5.0.13-avr-patch-1.1.gz or later version. To patch gcc-2.95.2: % tar -xzf gcc-core-2.95.2.tar.gz % cd gcc-2.95.2 % gzip -dc gcc-core-2.95.2-avr-patch-1.1.gz | patch -p1 To configure gcc-2.95.2: % cd gcc-2.95.2 % configure --target=avr If you have /usr/local/lib/gcc-lib/avr then: % rm -fr /usr/local/lib/gcc-lib/avr To compile gcc-2.95.2 with `ava' as AVR assembler: % cd gcc-2.95.2 % make TARGET_ASSEMBLER=ava To compile gcc-2.95.2 with `avr-binutils': % cd gcc-2.95.2 % make To install gcc-2.95.2 with `ava' as AVR assembler: % cd gcc-2.95.2 % make TARGET_ASSEMBLER=ava install To install gcc-2.95.2 with `avr-binutils': % cd gcc-2.95.2 % make install Now you can run `avr-gcc'. Use option `-mava' for the `ava' assembler. avr-gcc -O (optimize. Some times best result) avr-gcc -Os (optimize by size) avr-gcc -O9 (optimize by speed) (can generate more optimal code for size)