Mahlzeit,
ich wollte gerade ein etwas älteres AVR-Projekt neu kompilieren. Also
schnell mal den "aktuellsten" WinAVR geholt und installiert. Leider gibt
es damit Linkerfehler der Art:
1 | relocation truncated to fit: R_AVR_13_PCREL against symbol `__udivmodsi4'
|
2 | defined in .text.libgcc section in
|
3 | c:/winavr-20100110/bin/../lib/gcc/avr/4.3.3/avr51\libgcc.a(_udivmodsi4.o)
|
Hier im Forum habe ich dann Hinweise von Euch gefunden, dass dies mit
fehlerhaften Bibliotheken zusammenhängt. Ich habe dann das Makefile
geändert und "-nostdlib -lm -lc -lgcc" zu den LDFLAGS hinzugefügt, ohne
jedoch zu wissen, was diese Switche denn genau bewirken. Jetzt
kompiliert das Projekt zwar, aber es fehlt Code, beispielsweise die
Reset- und Interruptvektoren.
Da ich mir hier jetzt nicht weiterhelfen kann, habe ich kurzerhand den
älteren WinAVR-20090313 installiert, der macht jedenfalls keine
Probleme.
Jetzt frage ich mich allerdings, wieso da ein WinAVR freigegeben wurde,
der offensichtlich Probleme mit den Bibliotheken hat.
Gruß,
Peter