Hallo, hat irgendjemand Erfahrung mit der Funktion "strtod()" ? wenn ich die Funktion in mein Programm einbaue erhalte ich eine Linkerfehler, daß irgendetwas doppel definiert ist. Die Funktion atof() kommt zum gleichen Ergebnis. Gruß Bernd
Bernd wrote: > Hallo, > hat irgendjemand Erfahrung mit der Funktion "strtod()" ? > wenn ich die Funktion in mein Programm einbaue erhalte ich eine > Linkerfehler, daß irgendetwas doppel definiert ist. > Die Funktion atof() kommt zum gleichen Ergebnis. Ist doch ganz einfach. Nimm eine Definition von irgendwas raus und es sollte gehen. Anruf in der Werkstatt: Mein Auto benimmt sich so seltsam! Was könnte das sein?
Ohne nähere Infos siehe hier: http://www.google.de/cse?cx=partner-pub-1202612203358489%3Ajaffbdxotov&ie=UTF-8&q=strtod&sa=Suche Ansonsten wollen dir A. K. und karl heinz Buchegger sagen, dass ohne ausführliche Frage keine sinnvolle Antwort kommen kann. Dinge die in deiner Fragen vermutlich fehlen sind: -Komplette (und kopierte Fehlermeldung). -Der Code selbst (am besten ein Minimalbeispiel und mit Code-Tags). -Der Compiler, am besten mit Version. Wobei wir hier im *GCC*-Forum wohl mit dem GCC rechnen dürfen. ;-) Grundsätzlich bietet sich bei den meisten (und speziell auch bei dieser) Frage die Forensuche an, wenn ich mich recht erinnere, gab es auch in der letzten Zeit mehrere Fragen zu strtod().
Hallo, laut SourceForge.net, von wo ich WinAVR geladen habe, heiß es: > WinAVR (tm) is a suite of executable, open source software development > tools for the Atmel AVR series of RISC microprocessors hosted on the > Windows platform. Includes the GNU GCC compiler for C and C++" Ausserdem ist in der Forumsliste unter GCC auch "WinAVR" aufgelistet. daher bin ich eigentlich der Meinung hier richtig zu sein. der Code ist: char editPuffer[20]; double wert; ... wert = strtod(editPuffer + 1, NULL); Als Fehlermeldung erhalte ich: e:/programme/atmel/avr tools/winavr-20081205/bin/../lib/gcc/avr/4.3.2/../../../../avr/lib/avr51 \libc.a(cmpsf2.o): In function `__lesf2': (.text.fplib+0x0): multiple definition of `__ltsf2' e:/programme/atmel/avr tools/winavr-20081205/bin/../lib/gcc/avr/4.3.2/avr51\libgcc.a(_lt_sf.o): (.text+0x0): first defined here make: *** [TC_Uhr.elf] Error 1 Die Meldung kommt erst beim linken. Gruß Bernd
Das mit der Linker Option -lm steht auch in der Library Reference von Atmel. Funktioniert aber nicht.
Bernd wrote:
> Funktioniert aber nicht.
Meine Glaskugel meint, dass du sie nicht ans Ende der Kommandozeile
geschrieben hast. Damit wird sie effektiv ignoriert (weil zu dem
Zeitpunkt, da sie auf der Kommandozeile steht, der Linker daraus
noch nichts entnehmen kann).
In die Sprache vom Studio übersetzt: Nicht in die Linker-Optionen das -lm reinschreiben, sondern in die Liste der Libs.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.