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.

Problem using Flash28335_API_V210.lib in a project imported from CCV3.3 to CCV5.2

I am a newbie to the Code Composer Studio and to the TI processors in general, although I have been doing firmware development for many years.  I have been asked to use an existing project to do a proof of concept for a produce and have been successful in installing the CC5.2 and importing two linked cc3.3 projects.   However, I am having a problem with errors related to  “Flash28335_API_V210.lib”.  I am not sure I picked all the right options when I did the import as thee are some strange looking paths defined.  The source  that references the library and is getting errors is:

   Flash28_API:
  {
        -lFlash28335_API_V210.lib(.econst)
       -lFlash28335_API_V210.lib(.text)
   }

The errors I am getting are shown in the attached file: "CompileErrors.txt" and the .cmd file where the source giving the errors is attached as "SourceWhereErrorOccurrs.txt".  I would appreciate any help in getting past this problem as I have spent several days getting to this point and I still have not gotten to the code changes I need to make yet.  thanks.

/Users/rex/workspace_v5_2/SCM/projects/scm/scm/../../../projects/scm/Debug/scm.out" not built	scm		 	C/C++ Problem
#10008-D .printf (COPY): {} cannot find file "Flash28335_API_V210.lib"	F28335_BIOS_flash.cmd	/scm	line 46	C/C++ Problem
#10008-D cannot find file "Flash28335_API_V210.lib"	F28335_BIOS_flash.cmd	/scm	line 45	C/C++ Problem
#188-D pointless comparison of unsigned integer with zero	scm_tasks.c	/scm	line 425	C/C++ Problem
#552-D variable "rd_qposcnt" was set but never used	scm_eqep.c	/scm	line 174	C/C++ Problem
#10191-D ./scmcfg.cmd object ".printf" is not allocated, but is being placed as part of allocated object "GROUP_1"	scm		line 373	C/C++ Problem
/**********************************************************************
* File: f28335_BIOS_flash.cmd -- Linker command file for DSP/BIOS code
* with DSP in Boot to Flash bootmode.
*
* History: 12/13/07 - original (D. Alter)
**********************************************************************/

MEMORY
{
PAGE 0:    /* Program Memory */
           /* Memory (RAM/FLASH/OTP) blocks can be moved to PAGE1 for data allocation */

   ADC_CAL     : origin = 0x380080, length = 0x000009     /* ADC_cal function in Reserved memory */

}

/**************************************************************/
/* Link all user defined sections                             */
/**************************************************************/
SECTIONS
{
/*** User Defined Sections ***/
   scmParametersRam	 : > L47SARAM,     PAGE = 1           /* SCM parameters ram storage place */
   testRamArea		 : > L47SARAM,     PAGE = 1
   scmParametersFsh0 : > FLASH_2,      PAGE = 1           /* SCM parameters flash storage place */
   scmParametersFsh1 : > FLASH_3,      PAGE = 1           /* SCM parameters flash storage place */

   codestart         : > BEGIN_FLASH,  PAGE = 0           /* Used by file CodeStartBranch.asm */
   csm_rsvd          : > CSM_RSVD,     PAGE = 0           /* Used by file passwords.asm */
   passwords         : > PASSWORDS,    PAGE = 0           /* Used by file passwords.asm */

   /* Allocate ADC_cal function (pre-programmed by factory into TI reserved memory) */
   .adc_cal          : load = ADC_CAL, PAGE = 0, TYPE = NOLOAD

   /* Code to access Flash Memory must be copied into RAM to be run */
   ramFuncs          :   LOAD = FLASH_01                  /* Can be Flash */ 
                         RUN = L03SARAM                   /* Must be RAM */
                         LOAD_START(_ramFuncs_loadstart),
                         LOAD_END(_ramFuncs_loadend),
                         RUN_START(_ramFuncs_runstart),
						 PAGE = 0

   Flash28_API:
   {
        -lFlash28335_API_V210.lib(.econst) 
        -lFlash28335_API_V210.lib(.text)
   }                   LOAD = FLASH_01, 
                       RUN = L03SARAM,  
                       LOAD_START(_Flash28_API_LoadStart),
                       LOAD_END(_Flash28_API_LoadEnd),
                       RUN_START(_Flash28_API_RunStart),
                       PAGE = 0
}

/******************* end of file ************************/

  • After importing into CCSv5.2, does your project build options have any search paths to the location of the Flash28335_API_V210.lib described to the linker utility that will be parsing the linker command file (ie. f28335_BIOS_flash.cmd)?

    This would be the first thing I would suggest ensuring.

  • Thanks for your quick response.  I am attaching a text file that shows all the flags that are set for the compiler, linker, and TConf (whatever that is...).  I believe the answer to your question is yes.  I modified the File Search Path under the C2000 Linker to:  "../../Flash28335_API_V210/lib/Flash28335_API_V210.lib".  However, this does not help.

    C2000 Compiler summary of Flags Set:
    
    -v28 -ml --float_support=fpu32 -g --include_path="C:/ti/ccsv5/tools/compiler/c2000_6.1.0/include" --include_path="C:/Users/rex/workspace_v5_2/SCM/projects/scm/scm/Debug" --include_path="C:/ti/bios_5_41_13_42/packages/ti/bios/include" --include_path="C:/ti/bios_5_41_13_42/packages/ti/rtdx/include/c2000" --include_path="C:/ti/xdais_7_21_01_07/packages/ti/xdais" --include_path="C:/Users/rex/workspace_v5_2/SCM/projects/scm/scm/../../../projects/scm" --include_path="C:/Users/rex/workspace_v5_2/SCM/projects/scm/scm/../../../Flash28335_API_V210/include" --include_path="C:/Users/rex/workspace_v5_2/SCM/projects/scm/scm/../../../DSP2833x_common/include" --include_path="C:/Users/rex/workspace_v5_2/SCM/projects/scm/scm/../../../DSP2833x_headers/include" --include_path="C:/Users/rex/workspace_v5_2/SCM/projects/scm/scm/../../../myplatforms/scm" --define="_DEBUG" --define="LARGE_MODEL" --define="EXAMPLE_FLASH" --verbose_diagnostics --diag_warning=225 --display_error_number --issue_remarks --diag_wrap=off --obj_directory="C:/Users/rex/workspace_v5_2/SCM/projects/scm/scm/../../../projects/scm/Debug"
    
    
    C2000 Linker summary of Flags Set:
    
    -v28 -ml --float_support=fpu32 -g --define="_DEBUG" --define="LARGE_MODEL" --define="EXAMPLE_FLASH" --verbose_diagnostics --diag_warning=225 --display_error_number --issue_remarks --diag_wrap=off --obj_directory="C:/Users/rex/workspace_v5_2/SCM/projects/scm/scm/../../../projects/scm/Debug" -z -m"C:/Users/rex/workspace_v5_2/SCM/projects/scm/scm/../../../projects/scm/Debug/scm.map" --warn_sections -i"C:/ti/ccsv5/tools/compiler/c2000_6.1.0/lib" -i"C:/ti/ccsv5/tools/compiler/c2000_6.1.0/include" -i"C:/ti/bios_5_41_13_42/packages/ti/rtdx/lib/c2000" -i"C:/ti/bios_5_41_13_42/packages/ti/bios/lib" -i"C:/Users/rex/workspace_v5_2/SCM/projects/dsp28335/dsp28335" -i"C:/Users/rex/workspace_v5_2/SCM/projects/scm/scm" -i"C:/Users/rex/workspace_v5_2/SCM/projects/scm/scm/../../../projects/scm" --reread_libs --display_error_number --diag_wrap=off --rom_model
    
    TConf Summary of Flags Set:
    
    -Dconfig.importPath="C:/ti/bios_5_41_13_42/packages;"

     

  • You have placed this path in the C Compiler Include paths not in the Linker.  The linker is what needs to know the path to the Flash28335_API_V210.lib file.

  • To further clarify my comments, the linker File Search Path needs to be updated to point to the location of the Flash28335_API_V210.lib file.

    Go to Project->Properties, expand the Build->C2000 Linker option and update the File Search Path by adding the directory to the library search path.

    Please look at the illustration provided.

  • Rex,

    Here is a good link that talks about CCS for C2000, more to the point, it talks about how to migrate projects from CCS 3.3 to CCS5 in section 9.2

     http://processors.wiki.ti.com/index.php/C2000_Getting_Started_with_Code_Composer_Studio_v5#Migrating_C2000_Projects_from_CCSv3.3_to_CCSv5.1

     

  • Brandon,

    Sorry about the mis-understanding.  I did make a change under the build/C2000/FileSearch Path, however, I added the actual .lib to the top box rather than the location to the bottom box.  I have now gone back and made the change to the correct location as shown in your picture (pictures are worth a thousand words....) and after fixing another problem the project now compiles with only a few warnings that I should be able to take care of.

    Thanks! very much for your assistance. 

    Rex

  • Thank you for confirming the resolution.  I'm glad we got you past this hurdle.