Tool/software: Code Composer Studio
Good day
This is more a bug report and a guide for if anyone else gets the same problem. I'm using
- the evmK2H
- CCS 9.3
- GNU v9.2.1 (Linaro) compiler
- Linux host
The reason for the GNU compiler is that the TI compiler does not work for the A15, as the only target for the ARM is the gnu.targets.arm.A15F.
When I create a new CCS project, Select the target, Cortex A, Compiler GNU v9.2.1, Empty Project (with main.c), give it a name and finish.
Now try and compile. It fails with the following error:
makefile:137: recipe for target 'test.out' failed ti/ccs930/ccs/tools/compiler/gcc-arm-none-eabi-9-2019-q4-major/bin/../lib/gcc/arm-none-eabi/9.2.1/../../../../arm-none-eabi/bin/ld: error: ./main.o uses VFP register arguments, test.out does not
Ok, technically it fails at linking and not compiling...
So the problem is that the code was compiled using hard floating point (set by default) but the linker is not set to use hard floating point. The quick fix for me was to just add "-mfloat-abi=hard" to the linker command as well.
Project - Properties - Build - GNU Linker - Edit Flags... and then just paste -mfloat-abi=hard in there. Apply and Close. Compile and Bob is your uncle.
Hope this helps future users and maybe tech support to build in a fix.
Christo
