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 error #10234-D: unresolved symbols remain

Other Parts Discussed in Thread: TMS320F2811, C2000WARE

I am importing an old FW project into CCS v8.3.1.00004. My CPU target is TMS320F2811. After compiling my project I get: "error #10234-D: unresolved symbols remain". I checked that all the library(.lib) and header(.h) files are referenced correctly in Project Properties → Build → Linker → File Search Path. All of the listed undefined symbols (typedef, functions, params) are declared correctly in my header files. What could cause this error?

  • Hi,

    Request you to share the console log to figure out which symbols are not found. Based on it, I can provide suggestions to resolve this issue.

    Best Regards

    Siddharth 

  • Hi. Attached is the console log

    ,

    **** Build of configuration Debug for project MPC_Main_Feed ****
    
    "C:\\ti\\ccs831\\ccsv8\\utils\\bin\\gmake" all 
     
    Building file: "../source/H_Main.c"
    Invoking: C2000 Compiler
    "C:/ti/ccs831/ccsv8/tools/compiler/ti-cgt-c2000_18.1.4.LTS/bin/cl2000" -v28 -ml -mt -O0 --opt_for_speed=0 --include_path="E:/Mechanical Pipe Cutter/HYDR MTR CNTRL A3001971000/FW/DSP281x_Common_Files/lib" --include_path="E:/Mechanical Pipe Cutter/HYDR MTR CNTRL A3001971000/FW/A3001971000_Hydraulic_Mtr_Bd/A7000693FW_DSP/Firmware/include" --include_path="C:/ti/ccs831/ccsv8/tools/compiler/ti-cgt-c2000_18.1.4.LTS/include" --include_path="E:/Mechanical Pipe Cutter/HYDR MTR CNTRL A3001971000/FW/A3001971000_Hydraulic_Mtr_Bd/A7000693FW_DSP/Firmware/DSP281x_Common_Files/include" --include_path="E:/Mechanical Pipe Cutter/HYDR MTR CNTRL A3001971000/FW/A3001971000_Hydraulic_Mtr_Bd/A7000693FW_DSP/Firmware/MPC_Common_Files/include" --include_path="E:/Mechanical Pipe Cutter/HYDR MTR CNTRL A3001971000/FW/A3001971000_Hydraulic_Mtr_Bd/A7000693FW_DSP/Firmware/lib/DMC_SRC/include" --include_path="E:/Mechanical Pipe Cutter/HYDR MTR CNTRL A3001971000/FW/A3001971000_Hydraulic_Mtr_Bd/A7000693FW_DSP/Firmware/lib/DMC_SRC/include" --include_path="E:/Mechanical Pipe Cutter/HYDR MTR CNTRL A3001971000/FW/A3001971000_Hydraulic_Mtr_Bd/A7000693FW_DSP/Firmware/include" --include_path="C:/ti/ccs831/ccsv8/tools/compiler/ti-cgt-c2000_18.1.4.LTS/include" --include_path="E:/Mechanical Pipe Cutter/HYDR MTR CNTRL A3001971000/FW/A3001971000_Hydraulic_Mtr_Bd/A7000693FW_DSP/Firmware/DSP281x_Common_Files/include" --include_path="E:/Mechanical Pipe Cutter/HYDR MTR CNTRL A3001971000/FW/A3001971000_Hydraulic_Mtr_Bd/A7000693FW_DSP/Firmware/MPC_Common_Files/include" --include_path="E:/Mechanical Pipe Cutter/HYDR MTR CNTRL A3001971000/FW/A3001971000_Hydraulic_Mtr_Bd/A7000693FW_DSP/Firmware/DSP281x_Common_Files/include" --advice:performance=all --define=_INLINE --define=FLASH --define=SPI_COM -g --diag_warning=225 --diag_wrap=off --display_error_number --preproc_with_compile --preproc_dependency="source/H_Main.d_raw" --obj_directory="source"  "../source/H_Main.c"
    "../source/H_Main.c", line 1000: warning #225-D: function "SCICmds_Handler" declared implicitly
    Finished building: "../source/H_Main.c"
     
    Building target: "Main_Feed.out"
    Invoking: C2000 Linker
    "C:/ti/ccs831/ccsv8/tools/compiler/ti-cgt-c2000_18.1.4.LTS/bin/cl2000" -v28 -ml -mt -O0 --opt_for_speed=0 --advice:performance=all --define=_INLINE --define=FLASH --define=SPI_COM -g --diag_warning=225 --diag_wrap=off --display_error_number -z -m"Main_Feed.map" --stack_size=0x100 --warn_sections -i"C:/ti/ccs831/ccsv8/tools/compiler/ti-cgt-c2000_18.1.4.LTS/lib" -i"E:/Mechanical Pipe Cutter/HYDR MTR CNTRL A3001971000/FW/DSP281x_Common_Files/cmd" -i"C:/ti/ccs831/ccsv8/tools/compiler/ti-cgt-c2000_18.1.4.LTS/include" -i"E:/Mechanical Pipe Cutter/HYDR MTR CNTRL A3001971000/FW/A3001971000_Hydraulic_Mtr_Bd/A7000693FW_DSP/Firmware/lib" --reread_libs --diag_suppress=16002 --diag_wrap=off --display_error_number --xml_link_info="Main_Feed_linkInfo.xml" --rom_model -o "Main_Feed.out" "./DSP281x_Common_Files/DSP281x_Adc.obj" "./DSP281x_Common_Files/DSP281x_CSMPasswords.obj" "./DSP281x_Common_Files/DSP281x_CodeStartBranch.obj" "./DSP281x_Common_Files/DSP281x_CpuTimers.obj" "./DSP281x_Common_Files/DSP281x_DBGIER.obj" "./DSP281x_Common_Files/DSP281x_DefaultIsr.obj" "./DSP281x_Common_Files/DSP281x_ECan.obj" "./DSP281x_Common_Files/DSP281x_Ev.obj" "./DSP281x_Common_Files/DSP281x_GlobalVariableDefs.obj" "./DSP281x_Common_Files/DSP281x_Gpio.obj" "./DSP281x_Common_Files/DSP281x_InitPeripherals.obj" "./DSP281x_Common_Files/DSP281x_Mcbsp.obj" "./DSP281x_Common_Files/DSP281x_MemCopy.obj" "./DSP281x_Common_Files/DSP281x_PieCtrl.obj" "./DSP281x_Common_Files/DSP281x_PieVect.obj" "./DSP281x_Common_Files/DSP281x_Sci.obj" "./DSP281x_Common_Files/DSP281x_Spi.obj" "./DSP281x_Common_Files/DSP281x_SysCtrl.obj" "./DSP281x_Common_Files/DSP281x_XIntrupt.obj" "./DSP281x_Common_Files/DSP281x_Xintf.obj" "./DSP281x_Common_Files/DSP281x_XintfBootReset.obj" "./DSP281x_Common_Files/DSP281x_usDelay.obj" "./lib/DMC_SRC/src/svgen_mf.obj" "./lib/DMC_SRC/src/vhzprof.obj" "./lib/DMC_SRC/src/volt_calc.obj" "./source/CRC16.obj" "./source/H_Main.obj" "./source/MtrCmds.obj" "./source/PrintMsg.obj" "./source/SCICmds.obj" "./source/SCIO.obj" "./source/SPICmds.obj" "./source/com_trig.obj" "./source/f281x_en.obj" "./source/f281xadc04u.obj" "./source/f281xbldcpwm.obj" "./source/f28xspi.obj" "./source/spio.obj" "../cmd/Hydr_flash_lnk.cmd"  -lrts2800_ml.lib -lIQmath.lib -lrts2800_fpu32.lib 
    <Linking>
    warning #10247-D: creating output section "csmpasswds" without a SECTIONS specification
    warning #10247-D: creating output section "CpuTimer2RegsFile" without a SECTIONS specification
    warning #10247-D: creating output section "CpuTimer1RegsFile" without a SECTIONS specification
    warning #10247-D: creating output section "reset_vec" without a SECTIONS specification
     
     undefined       first referenced   
      symbol             in file        
     ---------       ----------------   
     _impulse_calc   ./source/H_Main.obj
     _mod6cnt_calc   ./source/H_Main.obj
     _pid_reg3_calc  ./source/H_Main.obj
     _rmp2_cntl_calc ./source/H_Main.obj
     _rmp3_cntl_calc ./source/H_Main.obj
     _rmp_cntl_calc  ./source/H_Main.obj
     _speed_prd_calc ./source/H_Main.obj
     
    error #10234-D: unresolved symbols remain
    error #10010: errors encountered during linking; "Main_Feed.out" not built
     
    >> Compilation failure
    makefile:185: recipe for target 'Main_Feed.out' failed
    gmake: *** [Main_Feed.out] Error 1
    
    **** Build Finished ****
    

  • Hi, 

    I am not sure which library these missing functions belong to.  Can you check if all the libraries that you are using exist and the file searh paths are correctly specified in the project settings.

    Best Regards

    Siddharth

  • Where is the .lib for IMPULSE.H?

    Also I noted, that 

    #ifdef __cplusplus
    extern "C" {
    #endif

    is missing in IMPULSE. H. Should I add it?

  • Hi, 

    Adding the extern C will not help is resolving this issue of undefined symbols.  There are source files or libraries that are missing and have to be added to the project.  Impulse.h defines a prototype for the impulse_calc but not sure where it is defined or implemented. 

    Do you know which version of C2000Ware was used previously?  The current C2000Ware does not have any such file named "Impulse.h" 

    Best Regards

    Siddharth

  • I managed to find the missing ".c" files. It looks like they are part of the DMC_SRC lib. After adding them to the project everything is OK. Thanks for your help Siddharth.

  • Hi, 

    Glad to know that it is resolved. Will close this thread,

    Best Regards

    Siddharth