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.

error : unresolved symbols

Hello everyone,

I want to write a program by using EDMA. When I compile the file, I have the following errors:


 undefined                    first referenced
>> Compilation failure
  symbol                          in file    
 ---------                    ----------------
 CSL_edma3ChannelClose        ./hello.obj    
 CSL_edma3ChannelOpen         ./hello.obj    
 CSL_edma3Close               ./hello.obj    
 CSL_edma3GetHwStatus         ./hello.obj    
 CSL_edma3GetParamHandle      ./hello.obj    
 CSL_edma3HwChannelControl    ./hello.obj    
 CSL_edma3HwChannelSetupParam ./hello.obj    
 CSL_edma3HwChannelSetupQue   ./hello.obj    
 CSL_edma3HwControl           ./hello.obj    
 CSL_edma3Init                ./hello.obj    
 CSL_edma3Open                ./hello.obj    
 CSL_edma3ParamSetup          ./hello.obj    

error: unresolved symbols remain


I looked at the source file csl_edma3.h and these functions are all extern functions.

Can anyone tell me which library file to add and how to to add the library file in CCS5 to resolve this problem? Thank you!

  • Di Lu,

    The library is the CSL library.  It's ti.csl.ae66(e).  the (e) specifies big endian.  Leave it off if you are using little endian.  It should be located in the lib directory under where edma3.h is.

    The simplest way to specify this is to edit your project settings, under the linker section/file search path and specify a direct path to this library.  You can also just set an include search path to point to this directory and specify this library in the linker command file with the command

    -l ti.csl.ae66 

     

    Regards,

    Dan