Problem with init() (in wiring.c) when my init of the UART (unsolved)

As I know that the libs are initialised before setup(), I tried to make a library with this.

But I get the same, it's not working.

#include "LED13.h" //include the declaration for this class

#include <util/setbaud.h>
#include <avr/sleep.h>

LED13::LED13(){

cli();
// v1state = inmsgstate = inmsglen = polarity = bitcnt = 0;
DDRB = _BV(PB7); // PB7/LED
// UART init
//#include <util/setbaud.h>
// Syrinx it was: UBRR2H = UBRR3H = UBRR0H = UBRRH_VALUE;
UBRR3H = UBRR0H = UBRRH_VALUE;
// Syrinx it was: UBRR2L = UBRR3L = UBRR0L = UBRRL_VALUE;
UBRR3L = UBRR0L = UBRRL_VALUE;
#if USE_2X
// Syrinx it was: UCSR2A = UCSR3A = UCSR0A = _BV(U2X3);
UCSR3A = UCSR0A = _BV(U2X3);
#endif
// Syrinx it was: UCSR2C = UCSR3C = UCSR0C = _BV(UCSZ30) | _BV(UCSZ31); // 8N1
UCSR3C = UCSR0C = _BV(UCSZ30) | _BV(UCSZ31); // 8N1
// Syrinx it was: UCSR2B = UCSR0B = _BV(TXEN0) | _BV(RXEN0) | _BV(RXCIE0); // Enable TX and RX
UCSR0B = _BV(TXEN0) | _BV(RXEN0) | _BV(RXCIE0); // Enable TX and RX
// for UART1, only TX is enabled, and only when sending in the right timeslice

// Timer init
GTCCR = 0; //_BV(PSR10); /* reset prescaler */

// trigger on falling edge (default), noise cancel
// lower 3 bits is div, off,1,8,64,256,1024,extfall,extris ; CS12,11,10
TCCR4B = _BV(ICNC1) | _BV(CS11);

// clear and enable Input Capture interrupt
TIFR4 |= _BV(ICF4) | _BV(TOV4) | _BV(OCF4A) | _BV(OCF4B);
TIMSK4 = _BV(ICIE4); // enable input capture only

sei(); // enable interrupts
// and sleep between events
set_sleep_mode(SLEEP_MODE_IDLE);

}

//<>
LED13::~LED13(){/nothing to destruct/}

//turn the LED on
void LED13::on(){

}

//turn the LED off
void LED13::off(){
//digitalWrite(LED_PIN,HIGH); //set the pin HIGH and thus turn LED on
}

//blink the LED in a period equal to paramterer -time.
void LED13::blink(int time){
//on(); //turn LED on
//delay(time/2); //wait half of the wanted period
//off(); //turn LED off
//delay(time/2); //wait the last half of the wanted period
}