Forum: Compiler & IDEs CoIDE Linker Problem - Anfaengerfrage


von Lukas H. (1uk3)


Lesenswert?

Hallo

Ich bin heute wegen der 32k beschraenkung von Atollic auf CoIDE 
umgestiegen.
Habs nach der Anleitung hier im Forum installiert 
(Beitrag "CooCox CoIDE mit STM32F4-Discovery Board")

Beim Testen kommen folgende Meldungen (beim Linker):
...
undefined reference to `ceil'
undefined reference to `sqrt'
undefined reference to `lround'
...

Also habe ich beim Linker die Option -lm hinzugefügt, weil das 
angaeblich helfen soll. Tut es aber nicht.

Im Configuration Tab von CoIDE gibts auch noch "Use base C Library" 
dadurch kommt -lgcc -lc -lm dazu, hat aber auch nicht geholfen.

Was muss ich noch einstellen?

lg
Lukas

von Matthias K. (matthiask)


Lesenswert?

Lukas H. schrieb:
> Im Configuration Tab von CoIDE gibts auch noch "Use base C Library"
> dadurch kommt -lgcc -lc -lm dazu, hat aber auch nicht geholfen.

Das ist erstmal richtig. Du musst aber noch in der Configuration bei 
Linked Libraries die Mathe-Lib libm.a angeben. Diese liegt bei mir unter 
C:\Programme\arm-none-eabi-gcc-4_6\arm-none-eabi\lib\libm.a Ggf. sind 
noch weitere Libs anzugeben.

In dem Feld Linked Libraries bleibt dann nur ein "m" als Eintrag.

von Lukas H. (1uk3)


Lesenswert?

Ahhh! Vielen Dank!

Wie kann man den hier Kekse verteilen

von Schnitzgi (Gast)


Lesenswert?

Sehr schön, danke!

Für cortexM0 Prozessoren (z.B. STM23F0) undbedingt das libm.a File aus 
dem "thumb" Ordner nehmen, sonst geht gar nichts.

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
Noch kein Account? Hier anmelden.