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.
Tool/software: Code Composer Studio
A customer has complained about the following trouble of CCSv7.
The used example is C2000Ware_1_00_01_00\device_support\f2833x\examples\fpu_hardware. I attached the project zip. Example_2833xFPU_hardware.zip
1) He remade its main() as bellow;
#include <math.h>
double z1;
z1 = sqrt(2.0);
z1 = pow(2.0, 1.5);
2) Get error messages while building in the console;
'Example_2833xFPU_hardware.out' failed
error: symbol "_sqrt" redefined: first defined in
"C:/ti/tirex-content/C2000Ware_1_00_01_00/libraries/math/FPUfastRTS/c28/lib/
He says no trouble with CCSv5.5 and wants to use rts2800_ fpu32_fast_supplement.lib to speed up his processing. Please, let us know aboutworkarounds of this trouble.
Best regards,
Kazuo Yamauchi
Hello Ki-Soo Lee,
Thanks for your support.
Regret to say, I couldn’t resolve this trouble by the way you suggested.
1. I wonder the two libraries, 1) and 2), can’t be used in combination.
z1= sqrt(2.0); …1) rts2800_ fpu32_fast_supplement.lib
z1=pow(2.0,1.5); ... 2) rst2800_fpu32.lib
2. error: symbol "_sqrt" redefined:
first defined in
"C:/ti/tirex-content/C2000Ware_1_00_01_00/libraries/math/FPUfastRTS/c28/lib/
rts2800_fpu32_fast_supplement.lib<sqrt_f32.obj>"; …1)
redefined in
"C:/ti/ccsv7/tools/compiler/ti-cgt-c2000_16.9.5.LTS/lib/rts2800_fpu32.lib<e_sqrtf.obj>" …2)
3. Link Order;
4. The processing time of sqrt function in fpu32_fast_supplement.lib is faster than fpu32.lib as bellow. So the client wants to use fpu32_fast_supplement.lib. This optimize level is register.
Test code;
// Toggle GPIO34
GpioDataRegs.GPBTOGGLE.bit.GPIO34 = 1;
z1 = sqrt(2.0);
GpioDataRegs.GPBTOGGLE.bit.GPIO34 = 1;
{
volatile unsigned int cnt;
for ( cnt =5; cnt>0; cnt-- ) {}
}
Best regards,
Kazuo Yamauchi
The root of your problem is in the library rts2800_fpu_fast_supplement.lib. While I cannot confirm it, I am confident this bug is fixed in later versions of that library. So, if it is not too much trouble, please try to upgrade that library, or the package that supplies it.
Thanks and regards,
-George