Hola yo también soy nuevo en esto de los microcontroladores Atmel, revisando tu código encontré que te falto un ";". En un compilador de C/C++ para windows no es un error de sintaxis y debería de funcionar igual que el AVR Studio

te anexo el código le agregue unas cosas espacios, sangría, { } etc es mas fácil y una de las buenas costumbres de programación según el libro de Deitel y Deitel jeje es la onda ese libro

aaaa como recomendación usa el AVR Simulator IDE es mucho mas rápido hacer las pruebas del código y si te funciona en se simulador igual funciona en el micro

Saludos
#include <avr/io.h>
int main( void )
{
DDRC=0X00;
DDRD=0XFF;
while( 1 )
{
if ( PINC == 0X08 ){
PORTD = 0x04; //<--- Aki le falto el ";"
}
else if( PINC == 0x04 ){
PORTD = 0x02;
}
else if( PINC == 0x02 ){
PORTD = 0x09;
}
else if( PINC == 0x01 ){
PORTD = 0x06;
}
else
PORTD=0x00;
}
}