problems using math.h
2005-08-12 by oemtyo
Hi everyone, I'm programming an application for lpc2119 and need to do complex mathematical calculations with values got from the A/D-Converter. Therefore i need to include the math.h to be able to call functions such as pow() or sqrt() ... The linker-flag "-lm" to include the math-library is set. (GNU ld version 2.14 20030612) But using newlib version 1.12.0 and arm-elf-gcc 3.3.3 I get several linker errors with undefined references to functions the libm.a should provide. <snip> make -k all arm-elf-ld -v -omain.prg ./crt0.o smon_main.o armVIC.o printf.o -T./lpc2119.ld -Map map /home/lpc2119/arm-elf/arm-elf/lib/libm.a(w_pow.o)(.text+0x80): In function `pow': /home/lpc2119/newlib-1.12.0/newlib/libm/math/w_pow.c:88: undefined reference to `__eqdf2' /home/lpc2119/arm-elf/bin/../arm-elf/lib/libm.a(w_ pow.o)(.text+0x128):/home/lpc2119/newlib-1.12.0/ne wlib/libm/math/w_pow.c:108: undefined reference to `__eqdf2' [...] 8 lines more /home/lpc2119/arm-elf/bin/../arm-elf/lib/libm.a(e_pow.o)(.text+0x4c8): In function `__ieee754_pow': /home/lpc2119/newlib-1.12.0/newlib/libm/math/e_pow.c:271: undefined reference to `__gtdf2' /home/lpc2119/arm-elf/bin/../arm-elf/lib/libm.a(e_ pow.o)(.text+0x98c):/home/lpc2119/newlib-1.12.0/ne wlib/libm/math/e_pow.c:277: undefined reference to `__ledf2' [...] 4 lines more In function `__ieee754_sqrt': /home/lpc2119/newlib-1.12.0/newlib/libm/math/e_sqrt.c:180: undefined reference to `__gtdf2' GNU ld version 2.14 20030612 make: *** [main.prg] Errors 1 make: Target »all« not compiled due to errors. </snip> Any idea on fixing this? Thanks in advance. Markus Plessing