Hallo, ich bekomme beim Linken folgenden Fehler: c:/winavr-20080512/bin/../lib/gcc/avr/4.3.0/../../../../avr/lib/avr5\lib c.a(floatsisf.o): In function `__floatunsisf': (.text.fplib+0x0): multiple definition of `__floatunsisf' c:/winavr-20080512/bin/../lib/gcc/avr/4.3.0/avr5\libgcc.a(_usi_to_sf.o): (.text+0x0): first defined here Ich linke das Programm mit den Optionen: -Wl,-u,vfprintf -lprintf_flt -lm, weil ich floating point und sprintf brauche. Ich benutze AVR Studio und einen ATMega644. Ist das ein Bug oder ein Feature ?
Schreib mal die komplette Linker-Kommandozeile auf.
Anbei das Makefile, welches von AVRStudio generiert wurde.
Gleiches Fehlerbild zeigt sich bei der aktuellen WinAVR Version vom 10.06.2008.
hochschieb
Und warum antwortest du nicht, sondern stellst stattdessen neue Forderungen? > Schreib mal die komplette Linker-Kommandozeile auf. ...ist immer noch unbeantwortet. Aber OK, wenn du schon zu faul bist, guck ich mir dein Makefile halt an und lass die Glaskugel raten. Die sagt mir, dass dein -lm zu weit vorn steht und daher nicht (ausreichend) berücksichtigt wird. Das Thema hatten wir hier schon x-mal: die Reihenfolge der Objektmodule und Bibliotheken auf der Linkerkommandozeile ist wichtig. Du kannst libm.a wohl im AVR Studio manuell noch mit hinzufügen (ich habe kein Windows, kann dir das also nicht genau sagen). Besser wäre es noch, wenn sich endlich mal jemand dazu äußern könnte, ob denn dieses Problem nun endlich in der nächsten Version von AVR Studio, die es derzeit bereits als Beta gibt, behoben worden ist. Das müsste aber mal jemand ausprobieren, der auch Windows besitzt -- also nicht ich.
Oh, ich dachte mit dem Makefile hätte sich die Anfrage erledigt.
Das manuelle Hinzufügen der Libm.a in der Library Option im AVR Studio hat geholfen, der Fehler tritt nicht mehr auf. Vielen Dank für den Hinweis. Sorry für die Störung, war mein Fehler. Anbei das neue makefile, welches funktioniert.
Nun musst du nur noch bitte ausprobieren, ob das neue Beta von AVR Studio die libm.a selbst hinzu fügt...
Ich habe die Version 4.15. Build 619 heruntergeladen. Nein, die libm.a wird leider auch hier nicht automatisch hinzugefügt.
Gast
#1309504
Hi! Also ich benutze im Moment die (aktuelle?) 4.16er Version von AVR Studio und da wird bei einem Projekt, wo es um einen SHT-Sensor geht, die libm.a auch NICHT automatisch eingefügt. Nur so zur Info ;)...
Gast
#1918617
In der Version 4.18 wird libm.a weiterhin NICHT automatisch eingefügt.
Gast
#2395438
Version 5.0: Im Westen nichts neues.
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.