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.

CCS/66AK2H14: Creating a hello project using the gcc compiler does not compile out of the box

Part Number: 66AK2H14


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