it is not possible (as in the IDE, which seems to do some magic) to access a function before it was declared. Maybe you need to reshuffle your functions in the source
This is true. I had a big discussion with some chap about it, and the upshot of it was that the IDE basically does a lot of "magic" that just isn't feasible (in a portable way, at least) from a makefile. Also, I say "magic", it actually amounts to accepting non-standard C and C++ code (the standards mandate that functions be declared or defined before use). And, worse still, in doing so it is effectively encouraging non-standard C/C++ code. :o(
Properly declaring/defining functions is the way forwards, in my opinion.
a problem with using float math occured, somehow we need to convince the linker to use c math
Is this something I should look at in the makefile? If so, can you provide me with a simple line of code that goes wrong, for testing purposes?