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.

When to link files or include

I am using CCSv4 and mostly TI provided source code for a project. My problem is in the linking stage of compiling. All of the files are built correctly, but I get these errors when it begins to link:

undefined         first referenced

  symbol               in file     

 ---------         ----------------

 _InitPieCtrl      ./SD_Test.obj   

 _InitPieVectTable ./SD_Test.obj   

 _InitSpiaGpio     ./SD_Test.obj   

 _InitSysCtrl      ./SD_Test.obj   

 

error: unresolved symbols remain

error: errors encountered during linking; "SD_Test.out" not built

>> Compilation failure

C:\Program Files\Texas Instruments\ccsv4\utils\gmake\gmake: *** [SD_Test.out] Error 1

C:\Program Files\Texas Instruments\ccsv4\utils\gmake\gmake: Target `all' not remade because of errors.

 

A friend says that it has to do with which files are linked to the project, and which ones are included with a #include. Most of the files are linked to the project, along with the line #include "DSP28x_Project.h" Is there a sort of rule of thumb I should follow when deciding what to link and what to include?

  • Hi Christopher,

    Where are those symbols defined? You may be missing a library or maybe you are missing a #define. I'll move this into the C2000 forum, they'll be able to provide more expertise there (this forum is for issues with CCS itself)

    ki