__floatunsisf Fehler

OP #1033686
Lesenswert?

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 ?
Moderator Persönliche Seite #1035664
Lesenswert?

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.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren