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.

Compiler/F28M35H52C: Adapting a ControlSuite Program and getting multiple Errors / Linker Warnings

Part Number: F28M35H52C

Tool/software: TI C/C++ Compiler

I imported the cpu_timers_c28 example and adapted it for my needs.  I right clicked on the project and renamed it and I renamed the main.c program to my own name.

It was compiling without errors but I noticed that the linker file was set to F28M35x_generic_wshared_C28_Flash.cmd so I changed the selection to F28M35H52C1_c28.cmd This caused almost 100 errors when I compiled so I went back to the original; now I get 32 errors and 72 warnings.

When I was able to compile, the output file was still cpu_timers_c28.out and I don't see where I can change that?

Can someone please guide me on how to recover this?

  • When I include ANY cmd file, I get errors and warnings that xxxxx memory range has already been specified
    When I exclude ALL cmd files, I get no errors but many (68) creating output section "xxxxxxxx" without a SECTIONS

    I understand that I want just 1 .cmd linker file but this doesn't make any sense.

    My project is broken :(

    HELP!
  • I'm flying solo but I think I'm getting somewhere in understanding this rats nest of code. My mistake was in thinking (like in The Highlander movie) there can be only one... .cmd file

    In the actual F28M35x_generic_wshared_C28.cmd file, it has the following at the top...

    /*
    //###########################################################################
    // FILE: F28M35x_generic_wshared_C28_FLASH.cmd
    // TITLE: Linker Command File For all F28M35x device w/Shared RAM
    //###########################################################################
    // $TI Release: F28M35x Support Library v220 $
    // $Release Date: Tue Sep 26 15:35:11 CDT 2017 $
    // $Copyright: Copyright (C) 2011-2017 Texas Instruments Incorporated -
    // http://www.ti.com/ ALL RIGHTS RESERVED $
    //###########################################################################
    */

    /* ======================================================
    // For Code Composer Studio V2.2 and later
    // ---------------------------------------
    // In addition to this memory linker command file,
    // add the header linker command file directly to the project.
    // The header linker command file is required to link the
    // peripheral structures to the proper locations within
    // the memory map.
    // The header linker files are found in <base>\F28M35x_headers\cmd
    // For BIOS applications add: F28M35x_Headers_BIOS.cmd
    // For nonBIOS applications add: F28M35x_Headers_nonBIOS.cmd
    ========================================================= */

    So I realized that the F28M35x_Headers_nonBIOS.cmd was listed in the project explorer but it was grayed out (excluded from project), right clicking it and unchecking the "Exclude from Build" selection led to zero errors.

    The output file name is specified under Basic Options for the C2000 Linker and editing that changed to name of my .out file
  • Ted

    Glad you resolved your issue! Your findings are correct.

    Best regards
    Chris