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.

Project build cannot find libc after upgrade to v5.5

I just installed CCS v5.5 after uninstalling v5.4 (which had been working fine) for use with C2000.

I imported two C projects, changed the compiler version to 6.2.0, set the C/C++ build to use the default build command (instead of "make"), added in the include paths and attempted a build, which failed for "Cannot find file "libc.a"" followed by further errors which I'd guess are dependent upon this one.

as far as I can see in the project options, libc is referenced only in the linker file input search path. I have not added this manually, so I am guessing it is supposed to be there.

My console output for the build runs fine until the portion I have shown below, which appears to be where the linker kicks in and immediately is looking for the libc file...

'Building target: SCPI_Build.out'
'Invoking: C2000 Linker'
"C:/ti/ccsv5/tools/compiler/c2000_6.2.0/bin/cl2000" -v28 -ml -mt -z --stack_size=0x300 --warn_sections --reread_libs --rom_model -o "SCPI_Build.out" "./scpi/SCPI_string.obj" "./scpi/SCPI_status.obj" "./scpi/SCPI_slaveComm.obj" "./scpi/SCPI_serialEmulation.obj" "./scpi/SCPI_respFmtr.obj" "./scpi/SCPI_requiredCmds.obj" "./scpi/SCPI_parser.obj" "./scpi/SCPI_outputQueue.obj" "./scpi/SCPI_msgEPCtrl.obj" "./scpi/SCPI_lexer.obj" "./scpi/SCPI_inputBuffer.obj" "./scpi/SCPI_execCtrl.obj" "./scpi/SCPI_errorQueue.obj" "./scpi/SCPI_commonCmds.obj" "./scpi/SCPI_buildTree.obj" "./SCPI_specificCmds.obj" "./Main.obj" "./DevInit_F2802x.obj" "./DSP2802x_usDelay.obj" "./DSP2802x_GlobalVariableDefs.obj" "./DSP2802x_CodeStartBranch.obj" "C:/ti/controlSUITE/device_support/f2802x/v128/DSP2802x_headers/cmd/DSP2802x_Headers_nonBIOS.cmd" "../SCPI_Build.CMD" -l"libc.a"
<Linking>
error: cannot find file "libc.a"
warning: automatic RTS selection: attempt to automatically link in index
library "libc.a" failed; file not found
>> Compilation failure
warning: entry-point symbol "_c_int00" undefined
undefined first referenced 
symbol in file
--------- ----------------
FS$$ADD ./scpi/SCPI_requiredCmds.obj
FS$$CMP ./scpi/SCPI_string.obj
FS$$DIV ./scpi/SCPI_string.obj
FS$$MPY ./scpi/SCPI_string.obj
FS$$NEG ./scpi/SCPI_string.obj
FS$$SUB ./scpi/SCPI_string.obj
FS$$TOI ./scpi/SCPI_string.obj
FS$$TOL ./scpi/SCPI_lexer.obj
FS$$TOU ./scpi/SCPI_requiredCmds.obj
I$$DIV ./scpi/SCPI_string.obj
I$$MOD ./scpi/SCPI_string.obj
I$$TOFS ./scpi/SCPI_string.obj
U$$MOD ./scpi/SCPI_string.obj
_atof ./scpi/SCPI_lexer.obj
_log10 ./scpi/SCPI_string.obj
_modf ./scpi/SCPI_string.obj
_pow ./scpi/SCPI_string.obj
error: unresolved symbols remain
error: errors encountered during linking; "SCPI_Build.out" not built
gmake: *** [SCPI_Build.out] Error 1
**** Build Finished ****

How should I correct this to allow the build to link correctly and produce a .out? 

Thanks

  • Thought about it for a little while, then realised I still had a working v5.4 install for the same projects on another PC, so opened up the project compiler and linker settings and made sure they were the same in the v5.5 install.

    there were a few things missing from the settings in the 5.5 project, and not anything I would have got anytime soon, if I remember correctly it was to add:

    "${CG_TOOL_ROOT}/lib"
    "${CG_TOOL_ROOT}/include"
    "${PROJECT_ROOT}"

    to the C2000 linker library file search path.