Wenn die LED an PortC2 leutet, ist sie also nach VCC verdrahtet. ABer mir fällt nix mehr dazu ein. Evtl sind die Fuses verstellt und der µC läuft nicht los, dann dürfte LED2 aber nicht brennen. Oder du hastn Fehler im Makefile (falls du make benutzt) und es wird kein neues HEX egeriert oder was anderes gebrannt als du denkst?

Oder du hast vergessen, die signal.h zu includen, die braucht man bis v3.4.4 oder so. Die gcc-Version siehst du mit
Code:
avr-gcc -v
Mach mal folgendes:
Code:
> avr-gcc -mmcu=atmega8 -Os timer0.c -o timer0.elf
> avr-objdump -d timer0.elf
und poste die Ausgabe. Wenn ein <SIGNAL> zu Beginn des ISR-COdes steht, dann wurde die ISR nicht eingetragen und du loops immer wieder via __bad_interrupt in den RESET rein. Falls <__vector_9> da steht, liegt der Fehler woanders

Code fehlerhaft:
Code:
0000005c <SIGNAL>:
  5c:	80 91 60 00 	lds	r24, 0x0060
  60:	8f 5f       	subi	r24, 0xFF	; 255
  62:	80 93 60 00 	sts	0x0060, r24
  66:	08 95       	ret
Code korrekt:
Code:
0000005c <__vector_9>:
  5c:	1f 92       	push	r1
  5e:	0f 92       	push	r0
  60:	0f b6       	in	r0, 0x3f	; 63
  62:	0f 92       	push	r0
  64:	11 24       	eor	r1, r1
  66:	8f 93       	push	r24
  68:	80 91 60 00 	lds	r24, 0x0060
  6c:	8f 5f       	subi	r24, 0xFF	; 255
  6e:	80 93 60 00 	sts	0x0060, r24
  72:	8f 91       	pop	r24
  74:	0f 90       	pop	r0
  76:	0f be       	out	0x3f, r0	; 63
  78:	0f 90       	pop	r0
  7a:	1f 90       	pop	r1
  7c:	18 95       	reti