This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Compiler/TMS320F28388D: rts2800_fpu32_eabi error while compiling

Part Number: TMS320F28388D
Other Parts Discussed in Thread: TMS320F28379D, , C2000WARE

Tool/software: TI C/C++ Compiler

Hi 

I am trying to compile my simulink generated C code in code composer to run on TMS320F28338d.

However, I am getting following errors. 

error #16041-D: File "C:/ti/ccs930/ccs/tools/compiler/ti-cgt-c2000_18.12.4.LTS/lib/rts2800_fpu32_eabi.lib<s_ceil.c.obj>" passes/returns double types in memory while previous files pass them in {3}
error #16041-D: File "C:/ti/ccs930/ccs/tools/compiler/ti-cgt-c2000_18.12.4.LTS/lib/rts2800_fpu32_eabi.lib<s_floor.c.obj>" passes/returns double types in memory while previous files pass them in {3}
error #10010: errors encountered during linking; "F28388D_CPU2.out" not built

I have checked all my function calls for ceil and floor and they are passed with double type variable and output is also double type variable. 

I have previously used the same code on TMS320F28379D. But with TMS320F28388D I am using driverlib.lib and therefore my output format is set to eabi (ELF). 

Is there any setting that am I missing or that I can take a look at?

Any help would be appreciated! 

Thanks, 

Swapnil 

  • Swapnil,

    Are you using  --float_support=fpu64 build parameter?

    Is this compiling error happening in your custom project only or you see this error even in any example from C2000ware/driverlib?

  • Hi,

    Thanks for your reply. 

    I looked at example applications to see if I was doing anything differently. 

    I was linking rts2800_ml.lib and rts2800_fpu32_eabi.lib lib manually under c2000 linker.

    I changed that to match the empty_c28x_dual_driverlib_project (only include libc.a) and that seems to have fixed my problem for now.

    Thank you.