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/AM5728: Third Build Configuration Results in Invalid Makefile

Part Number: AM5728

Tool/software: Code Composer Studio

I have an existing DSP project for the AM5728.  It has two working build configurations, EVM (so I can run my code on the EVM) and Platform1 (my code compiled for my platform on DSP Core #1).  I need to add a third build configuration for DSP Core #2. 

So, under Manage Configurations, I select New, Type in a new name, let's say Platform2 and copy from existing Configuration Platform1. 

Platform1 one still builds but Platform2 fails to build with this error:

gmake[1]: *** No rule to make target `<My project path>/Platform2/Dsp2.xe66', needed by `main-build'.

gmake[1]: Target `main-build' not remade because of errors.

gmake: *** [all] Error 2

When I look at the generated makefile difference between Platform1 and Platform2 I see this for Platform2:

EXE_OUTPUTS += \
linker.exe \

EXE_OUTPUTS__QUOTED += \
"linker.exe" \

I've also seen

EXE_OUTPUTS += \
default.exe \

EXE_OUTPUTS__QUOTED += \
"default.exe" \

and

EXE_OUTPUTS += \
BIOS.exe \

EXE_OUTPUTS__QUOTED += \
"BIOS.exe" \

What I should see is

EXE_OUTPUTS += \
<my project path>/Platform2/Dsp2.xe66 \

EXE_OUTPUTS__QUOTED += \
"<my project path>/Platform2/Dsp2.xe66" \

No amount of deleting the workspace, restarting CCS, deleting the build folders, etc seems to be able to fix this.  What can I different to make this work correctly?

  • Also, I noticed in the built makefile that entries for BIN_OUTPUTS are correct, the main-build: line is correct, but the first entry under "# Tool invocations" is not correct:

    # Tool invocations
    @echo 'No tool found that can build the extension specified with the build artifact name $@'
    default.exe: $(OBJS) $(GEN_CMDS)

    it should read

    # Tool invocations
    <my project path>/Platform2/Dsp2.xe66: $(OBJS) $(GEN_CMDS)
  • This is a known issue that we tracking at TI under CCDSK-1990. The underlying issue, however, is coming from Eclipse CDT (bug report here).

    Please see this related post for a workaround you could use until the issue is fixed. Hope this helps.

  • Ah, excellent. Not sure why I could not find that post when I searched, but that did help. The solution for me was in the naming of the output file. In the Linker Options for Output File name, I can specify filename.xe66 in the first two build configurations, but in the third I must specify filename.out. I then added a post build step to rename the .out to .xe66. So, I can build my projects now. Thanks.