Dear sdcc community, I am trying to compile and link a piece of code using cosf(). I compiled and installed gputils (revision 932) and sdcc (revision 8435) from svn, with --enable-enhanced-cores:
SDCC : mcs51/gbz80/z80/z180/r2k/r3ka/ds390/pic16/pic14/TININative/ds400/hc08/s08 3.2.1 #8435 (Feb 17 2013) (Linux) When compiling and linking and my source I get the following error: error: missing definition for symbol "_cosf", required by "problem.o" problem.c looks as follows: #define __16f1938 #include "pic14/pic16f1938.h" #include <math.h> void main(void) { float x = cosf(1); } Following the SDCC manual PDF from http://sdcc.sourceforge.net/doc/sdccman.pdf I found the following sentence regarding Pic14 enhanced cores: "When SDCC is used to invoke the linker, SDCC will automatically select the libsdcc.lib-variant suitable for the target device. However, no such magic has been conjured up for libm.lib!" I tried to build my source using sdcc -mpic14 -p16f1938 --use-non-free problem.c /usr/local/share/sdcc/lib/pic14/libme.lib which resulted in error: processor family mismatch in "cosf.o" error: processor family mismatch in "sincosf.o" error: processor family mismatch in "fabsf.o" error: processor family mismatch in "errno.o" I would greatly appreciate advice how to proceed. Kind regards, //Daniel ------------------------------------------------------------------------------ Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_d2d_feb _______________________________________________ Sdcc-user mailing list Sdcc-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/sdcc-user