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.

It shows "error: unresolved symbols remain" in console. what's the problem?

i build a new RTSC project in CCS5. after adding the source code " cpsw_singlecore.c " in the folder <...>\pdk_C6678_1_0_0_17\packages\ti\drv\pa\example\emacExample. when i want to build it, it shows "error: unresolved symbols remain" in console as showed ? what's the problem?

**** Build of configuration Debug for project TryNet ****

C:\Program Files\Texas Instruments\ccsv5\utils\gmake\gmake -k all
'Building target: TryNet.out'
'Invoking: C6000 Linker'
"C:/Program Files/Texas Instruments/ccsv5/tools/compiler/c6000/bin/cl6x" -mv6600 -g --diag_warning=225 --abi=eabi -z -m"TryNet.map" --warn_sections -i"C:/Program Files/Texas Instruments/ccsv5/tools/compiler/c6000/lib" -i"C:\Program Files\Texas Instruments\pdk_C6678_1_0_0_17\packages\ti\drv\pa\lib" -i"C:\Program Files\Texas Instruments\pdk_C6678_1_0_0_17\packages\ti\csl\lib" -i"C:\Program Files\Texas Instruments\pdk_C6678_1_0_0_17\packages\ti\platform\evmc6678l\platform_lib\lib\debug" -i"C:/Program Files/Texas Instruments/ccsv5/tools/compiler/c6000/include" --reread_libs --rom_model -o "TryNet.out" -l"./configPkg/linker.cmd"  "./cpsw_singlecore.obj" -l"libc.a" -l"C:\Program Files\Texas Instruments\pdk_C6678_1_0_0_17\packages\ti\drv\pa\lib\ti.drv.pa.ae66" -l"C:\Program Files\Texas Instruments\pdk_C6678_1_0_0_17\packages\ti\platform\evmc6678l\platform_lib\lib\debug\ti.platform.evm6678l.ae66" -l"C:\Program Files\Texas Instruments\pdk_C6678_1_0_0_17\packages\ti\csl\lib\ti.csl.ae66" -l"C:\Program Files\Texas Instruments\pdk_C6678_1_0_0_17\packages\ti\csl\lib\ti.csl.intc.ae66" "../cpsw_linker.cmd"
<Linking>


 undefined      first referenced    
>> Compilation failure
  symbol            in file         
 ---------      ----------------    
 CycleDelay     ./cpsw_singlecore.obj
 Init_Cppi      ./cpsw_singlecore.obj
 Init_Cpsw      ./cpsw_singlecore.obj
 Init_PASS      ./cpsw_singlecore.obj
 Init_Qmss      ./cpsw_singlecore.obj
 SendPacket     ./cpsw_singlecore.obj
 Setup_PASS     ./cpsw_singlecore.obj
 Setup_Rx       ./cpsw_singlecore.obj
 Setup_Tx       ./cpsw_singlecore.obj
 gRxCounter     ./cpsw_singlecore.obj
 gTxCounter     ./cpsw_singlecore.obj
 view_ale_table ./cpsw_singlecore.obj

error: unresolved symbols remain
error: errors encountered during linking; "TryNet.out" not built

  • Haifei Wu,

    My guess is that a required library is not being included.

    Try building the original emacExample example project to confirm that it will build correctly as delivered from TI. Then you can try importing that project into a new one.

    It can be difficult to get all the correct items included when you create a project from the very beginning. The method I described above may give you a better chance for success. Please let us know how this works for you or what additional problems you have.

    Regards,
    RandyP

  • thank you RandyP.

    the original example can be build OK. And i want to find which items should be included. 

  • Good to hear. You have now eliminated several possible problems with your project, including the CCS & compiler versions and missing files from the computer.

    Now you have a working project with a set of files and Build Properties and other settings. You must now compare them side-by-side to find the differences. You must look in every line of the Build Properties to find the changes that are incorrect in your new project. It may have been created wrong in the first place, since there are several project templates to choose from. I find the choices and differences to be confusing and do not know how to tell you which empty one to start from.

    The easier way is to import a copy of the working project and build from that. This is the method I use when I have problems like this. Without watching every keystroke, it could be difficult to figure out what is missing. Or it could be as simple as knowing which library file needs to be included.

    Have you looked through the Build Properties of the two projects to compare them?

    Regards,
    RandyP

  • Haifei,
    You are missing 4 files. All of the files can be found under this directory:
    <INSTALL_DIR>\pdk_C6678_1_0_0_17\packages\ti\drv\pa\example\emacExample

    After doing some quick searching, you can see that the functions are defined in the following files:
    cppi_qmss_mgmt.c
    cpsw_mgmt.c
    pa_mgmt.c
    view_ale_table.c

    Here are the line numbers of those functions in the files:
    CycleDelay ./cpsw_singlecore.obj ==> pa_mgmt.c, line 103
    Init_Cppi ./cpsw_singlecore.obj ==> cppi_qmss_mgmt.c, line 298
    Init_Cpsw ./cpsw_singlecore.obj ==> cpsw_mgmt.c, line 461
    Init_PASS ./cpsw_singlecore.obj ==> pa_mgmt.c, line 744
    Init_Qmss ./cpsw_singlecore.obj ==> cppi_qmss_mgmt.c, line 179
    SendPacket ./cpsw_singlecore.obj ==> cppi_qmss_mgmt.c, line 699
    Setup_PASS ./cpsw_singlecore.obj ==> pa_mgmt.c, line 866
    Setup_Rx ./cpsw_singlecore.obj ==> cppi_qmss_mgmt.c, line 453
    Setup_Tx ./cpsw_singlecore.obj ==> cppi_qmss_mgmt.c, line 380
    gRxCounter ./cpsw_singlecore.obj ==> cppi_qmss_mgmt.c, line 135
    gTxCounter ./cpsw_singlecore.obj ==> cppi_qmss_mgmt.c, line 135
    view_ale_table ./cpsw_singlecore.obj ==> view_ale_table.c, line 55