Seltsamerweise scheint der c++-Compiler den eingestellten Controller nicht zu erkennen und kann daher nicht die passende io.h einbinden.
Das kannst Du aber manuell machen, indem Du vor dem #include ein #define __Controllername__ einfügst, also z.B. #define __AVR_ATmega128__

Das günstigste Tool, was mir spontan einfällt, ist der AVR Dragon. Kostet zwar immer noch über 60€, kann dafür aber auch InSystem debuggen.