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.

RTOS firmware does not build in release configuration.

Other Parts Discussed in Thread: SYSBIOS, TM4C123GH6PM, CC3100

I have been developing my firmware using the Debug configuration. Now I switched to Release configuration and I am getting some build errors and warnings. Please see below for the messages. Your advice is appreciated.

Jonathan

Description Resource Path Location Type

Errors:

#10010 errors encountered during linking; "ESU_Firmware_UART.out" not built ESU_Firmware_UART C/C++ Problem
#10264 DEFAULT memory range overlaps existing memory range RAM ESU_Firmware_UART C/C++ Problem

Warnings:


#10096-D specified address lies outside memory map linker.cmd /ESU_Firmware_UART/Debug/configPkg line 165 C/C++ Problem
#10247-D creating output section ".bss:.common" without a SECTIONS specification ESU_Firmware_UART C/C++ Problem
#10247-D creating output section ".bss" without a SECTIONS specification ESU_Firmware_UART C/C++ Problem
#10247-D creating output section ".cinit" without a SECTIONS specification ESU_Firmware_UART C/C++ Problem
#10247-D creating output section ".const" without a SECTIONS specification ESU_Firmware_UART C/C++ Problem
#10247-D creating output section ".data" without a SECTIONS specification ESU_Firmware_UART C/C++ Problem
#10247-D creating output section ".text" without a SECTIONS specification ESU_Firmware_UART C/C++ Problem
#179-D variable "dummy" was declared but never referenced spiloopback.c /ESU_Firmware_UART line 569 C/C++ Problem
#179-D variable "i" was declared but never referenced spiloopback.c /ESU_Firmware_UART line 634 C/C++ Problem
#179-D variable "input" was declared but never referenced spiloopback.c /ESU_Firmware_UART line 1950 C/C++ Problem
#552-D variable "dummy" was set but never used spiloopback.c /ESU_Firmware_UART line 186 C/C++ Problem
#552-D variable "oldEncoderValue" was set but never used spiloopback.c /ESU_Firmware_UART line 1380 C/C++ Problem
#552-D variable "transferOK" was set but never used spiloopback.c /ESU_Firmware_UART line 272 C/C++ Problem
#552-D variable "transferOK" was set but never used spiloopback.c /ESU_Firmware_UART line 353 C/C++ Problem
#552-D variable "transferOK" was set but never used spiloopback.c /ESU_Firmware_UART line 434 C/C++ Problem
#552-D variable "transferOK" was set but never used spiloopback.c /ESU_Firmware_UART line 938 C/C++ Problem
#552-D variable "transferOK" was set but never used spiloopback.c /ESU_Firmware_UART line 1006 C/C++ Problem
<a href="file:/C:/ti/ccsv612/ccsv6/tools/compiler/dmed/HTML/225.html">#225-D</a> function "SysCtlDelay" declared implicitly spiloopback.c /ESU_Firmware_UART line 1449 C/C++ Problem
<a href="file:/C:/ti/ccsv612/ccsv6/tools/compiler/dmed/HTML/225.html">#225-D</a> function "SysCtlDelay" declared implicitly spiloopback.c /ESU_Firmware_UART line 1463 C/C++ Problem
This project was created using a version of compiler that is not currently installed: 5.2.6 [ARM]. Another version of the compiler will be used during build: 5.2.5. Please go to <a href="liveaction:OpenAppCenter">CCS App Center</a> to install the compiler of the required version, or migrate the project to one of the available compiler versions by adjusting project properties. ESU_Firmware_UART properties Problems

  • Hi Jonathan,

    My guess is that there are some build options that you updated for the debug configuration but did not replicate for the release configuration. You should study your linker command files to make sure no memory sections are overlapping, which is what this error is saying:

    #10264 DEFAULT memory range overlaps existing memory range RAM ESU_Firmware_UART C/C++ Problem

    Different generated linker command files are used for the debug and release configurations (this is beside the one you included in your project, which obviously should be taken into account as well). If you are using CCS 6.1, you can find them here:

    If you look at the differences between the two linker command files, that may give a clue as to what may be different in the Release configuration that is overlapping with the 'RAM' section. Feel free to share your linker command files (or your project) if you like us to take a look as well.

    Also double-check that you have the same target and platform specified under your project properties for both Debug and Release configurations:

    Another (unrelated) advice is to install the ARM compiler  5.2.6, since the last warning is reporting that your project is trying to use it.

    Best regards,

    Vincent

  • Hi Vincent,

    Thanks for the input. Does CCS have a built-in file comparison tool? I've attached the two linker.cmd files here. 

    The platform and target under RTSC look the same for Debug and Release modes.

    Where can I download the newer compiler 5.2.6?

    I have also noticed that in my ESU.map file, there is memory for FLASH and SRAM, but in my EKU.map file, there is only RAM, although they were both built using the Debug configuration. Please see the .map files at the bottom. Also, one has the .bootVecs , the other does not. Are there settings that caused these differences?

    linker.cmd (Debug)

    /*
    * Do not modify this file; it is automatically generated from the template
    * linkcmd.xdt in the ti.platforms.tiva package and will be overwritten.
    */

    /*
    * put '"'s around paths because, without this, the linker
    * considers '-' as minus operator, not a file name character.
    */


    -l"C:\TI_RTOS\Workspace\ESU_Firmware_UART\Debug\configPkg\package\cfg\spiloopback_pem4f.oem4f"
    -l"C:\ti\tirtos_tivac_2_14_00_10\products\uia_2_00_02_39\packages\ti\uia\sysbios\lib\release\ti.uia.sysbios.aem4f"
    -l"C:\ti\tirtos_tivac_2_14_00_10\products\uia_2_00_02_39\packages\ti\uia\loggers\lib\release\ti.uia.loggers.aem4f"
    -l"C:/ti/tirtos_tivac_2_14_00_10/packages/ti/drivers/lib/drivers_tivaware.aem4f"
    -l"C:/ti/tirtos_tivac_2_14_00_10/packages/ti/drivers/ports/tirtos/lib/tirtosport.aem4f"
    -l"C:\ti\tirtos_tivac_2_14_00_10\products\bios_6_42_01_20\packages\ti\sysbios\fatfs\lib\release\ti.sysbios.fatfs.aem4f"
    -l"C:\TI_RTOS\Workspace\ESU_Firmware_UART\src\sysbios\sysbios.aem4f"
    -l"C:\ti\tirtos_tivac_2_14_00_10\products\bios_6_42_01_20\packages\ti\catalog\arm\cortexm4\tiva\ce\lib\Boot.aem4f"
    -l"C:\ti\tirtos_tivac_2_14_00_10\products\uia_2_00_02_39\packages\ti\uia\services\lib\release\ti.uia.services.aem4f"
    -l"C:\ti\tirtos_tivac_2_14_00_10\products\uia_2_00_02_39\packages\ti\uia\runtime\lib\release\ti.uia.runtime.aem4f"
    -l"C:\ti\tirtos_tivac_2_14_00_10\products\uia_2_00_02_39\packages\ti\uia\events\lib\release\ti.uia.events.aem4f"
    -l"C:\ti\tirtos_tivac_2_14_00_10\products\bios_6_42_01_20\packages\ti\targets\arm\rtsarm\lib\ti.targets.arm.rtsarm.aem4f"
    -l"C:\ti\tirtos_tivac_2_14_00_10\products\bios_6_42_01_20\packages\ti\targets\arm\rtsarm\lib\boot.aem4f"
    -l"C:\ti\tirtos_tivac_2_14_00_10\products\bios_6_42_01_20\packages\ti\targets\arm\rtsarm\lib\auto_init.aem4f"

    --retain="*(xdc.meta)"

    /* C6x Elf symbols */
    --symbol_map __TI_STACK_SIZE=__STACK_SIZE
    --symbol_map __TI_STACK_BASE=__stack
    --symbol_map _stack=__stack


    --args 0x0
    -heap 0x0
    -stack 0x1000

    /*
    * Linker command file contributions from all loaded packages:
    */

    /* Content from xdc.services.global (null): */

    /* Content from xdc (null): */

    /* Content from xdc.corevers (null): */

    /* Content from xdc.shelf (null): */

    /* Content from xdc.services.spec (null): */

    /* Content from xdc.services.intern.xsr (null): */

    /* Content from xdc.services.intern.gen (null): */

    /* Content from xdc.services.intern.cmd (null): */

    /* Content from xdc.bld (null): */

    /* Content from ti.targets (null): */

    /* Content from ti.targets.arm.elf (null): */

    /* Content from xdc.rov (null): */

    /* Content from xdc.runtime (null): */

    /* Content from xdc.services.getset (null): */

    /* Content from ti.targets.arm.rtsarm (null): */

    /* Content from ti.sysbios.interfaces (null): */

    /* Content from ti.sysbios.family (null): */

    /* Content from ti.sysbios.family.arm (ti/sysbios/family/arm/linkcmd.xdt): */
    --retain "*(.vecs)"

    /* Content from xdc.rta (null): */

    /* Content from ti.uia.events (null): */

    /* Content from ti.uia.runtime (null): */

    /* Content from xdc.runtime.knl (null): */

    /* Content from ti.sysbios.rts (ti/sysbios/rts/linkcmd.xdt): */

    /* Content from ti.uia.services (null): */

    /* Content from ti.catalog.arm.peripherals.timers (null): */

    /* Content from ti.catalog.arm.cortexm4 (null): */

    /* Content from ti.catalog (null): */

    /* Content from ti.catalog.peripherals.hdvicp2 (null): */

    /* Content from xdc.platform (null): */

    /* Content from xdc.cfg (null): */

    /* Content from ti.catalog.arm.cortexm3 (null): */

    /* Content from ti.catalog.arm.cortexm4.tiva.ce (null): */

    /* Content from ti.platforms.tiva (null): */

    /* Content from ti.sysbios.family.arm.lm4 (null): */

    /* Content from ti.sysbios.family.arm.m3 (ti/sysbios/family/arm/m3/linkcmd.xdt): */
    -u _c_int00
    --retain "*(.resetVecs)"
    ti_sysbios_family_arm_m3_Hwi_nvic = 0xe000e000;

    /* Content from ti.sysbios.hal (null): */

    /* Content from ti.sysbios.knl (null): */

    /* Content from ti.sysbios (null): */

    /* Content from ti.sysbios.syncs (null): */

    /* Content from ti.sysbios.gates (null): */

    /* Content from ti.sysbios.fatfs (null): */

    /* Content from ti.drivers (null): */

    /* Content from ti.tirtos (null): */

    /* Content from ti.sysbios.xdcruntime (null): */

    /* Content from ti.sysbios.heaps (null): */

    /* Content from ti.uia.loggers (null): */

    /* Content from ti.sysbios.utils (null): */

    /* Content from ti.uia.sysbios (null): */

    /* Content from configPkg (null): */

    /* Content from xdc.services.io (null): */

    /* Content from ti.drivers.ports (null): */

    /* Content from ti.drivers.ports.tirtos (null): */

    /*
    * symbolic aliases for static instance objects
    */
    xdc_runtime_Startup__EXECFXN__C = 1;
    xdc_runtime_Startup__RESETFXN__C = 1;
    TSK_idle = ti_sysbios_knl_Task_Object__table__V + 304;


    SECTIONS
    {
    .bootVecs: type = DSECT
    .vecs: load > 0x20000000
    .resetVecs: load > 0x0

    xdc.meta: type = COPY
    }

    linker.cmd (Release)

    /*
    * Do not modify this file; it is automatically generated from the template
    * linkcmd.xdt in the ti.platforms.tiva package and will be overwritten.
    */

    /*
    * put '"'s around paths because, without this, the linker
    * considers '-' as minus operator, not a file name character.
    */


    -l"C:\TI_RTOS\Workspace\ESU_Firmware_UART\Release\configPkg\package\cfg\spiloopback_pem4f.oem4f"
    -l"C:\ti\tirtos_tivac_2_14_00_10\products\uia_2_00_02_39\packages\ti\uia\sysbios\lib\release\ti.uia.sysbios.aem4f"
    -l"C:\ti\tirtos_tivac_2_14_00_10\products\uia_2_00_02_39\packages\ti\uia\loggers\lib\release\ti.uia.loggers.aem4f"
    -l"C:/ti/tirtos_tivac_2_14_00_10/packages/ti/drivers/lib/drivers_tivaware.aem4f"
    -l"C:/ti/tirtos_tivac_2_14_00_10/packages/ti/drivers/ports/tirtos/lib/tirtosport.aem4f"
    -l"C:\ti\tirtos_tivac_2_14_00_10\products\bios_6_42_01_20\packages\ti\sysbios\fatfs\lib\release\ti.sysbios.fatfs.aem4f"
    -l"C:\TI_RTOS\Workspace\ESU_Firmware_UART\src\sysbios\sysbios.aem4f"
    -l"C:\ti\tirtos_tivac_2_14_00_10\products\bios_6_42_01_20\packages\ti\catalog\arm\cortexm4\tiva\ce\lib\Boot.aem4f"
    -l"C:\ti\tirtos_tivac_2_14_00_10\products\uia_2_00_02_39\packages\ti\uia\services\lib\release\ti.uia.services.aem4f"
    -l"C:\ti\tirtos_tivac_2_14_00_10\products\uia_2_00_02_39\packages\ti\uia\runtime\lib\release\ti.uia.runtime.aem4f"
    -l"C:\ti\tirtos_tivac_2_14_00_10\products\uia_2_00_02_39\packages\ti\uia\events\lib\release\ti.uia.events.aem4f"
    -l"C:\ti\tirtos_tivac_2_14_00_10\products\bios_6_42_01_20\packages\ti\targets\arm\rtsarm\lib\ti.targets.arm.rtsarm.aem4f"
    -l"C:\ti\tirtos_tivac_2_14_00_10\products\bios_6_42_01_20\packages\ti\targets\arm\rtsarm\lib\boot.aem4f"
    -l"C:\ti\tirtos_tivac_2_14_00_10\products\bios_6_42_01_20\packages\ti\targets\arm\rtsarm\lib\auto_init.aem4f"

    --retain="*(xdc.meta)"

    /* C6x Elf symbols */
    --symbol_map __TI_STACK_SIZE=__STACK_SIZE
    --symbol_map __TI_STACK_BASE=__stack
    --symbol_map _stack=__stack


    --args 0x0
    -heap 0x0
    -stack 0x1000

    /*
    * Linker command file contributions from all loaded packages:
    */

    /* Content from xdc.services.global (null): */

    /* Content from xdc (null): */

    /* Content from xdc.corevers (null): */

    /* Content from xdc.shelf (null): */

    /* Content from xdc.services.spec (null): */

    /* Content from xdc.services.intern.xsr (null): */

    /* Content from xdc.services.intern.gen (null): */

    /* Content from xdc.services.intern.cmd (null): */

    /* Content from xdc.bld (null): */

    /* Content from ti.targets (null): */

    /* Content from ti.targets.arm.elf (null): */

    /* Content from xdc.rov (null): */

    /* Content from xdc.runtime (null): */

    /* Content from xdc.services.getset (null): */

    /* Content from ti.targets.arm.rtsarm (null): */

    /* Content from ti.sysbios.interfaces (null): */

    /* Content from ti.sysbios.family (null): */

    /* Content from ti.sysbios.family.arm (ti/sysbios/family/arm/linkcmd.xdt): */
    --retain "*(.vecs)"

    /* Content from xdc.rta (null): */

    /* Content from ti.uia.events (null): */

    /* Content from ti.uia.runtime (null): */

    /* Content from xdc.runtime.knl (null): */

    /* Content from ti.sysbios.rts (ti/sysbios/rts/linkcmd.xdt): */

    /* Content from ti.uia.services (null): */

    /* Content from ti.catalog.arm.peripherals.timers (null): */

    /* Content from ti.catalog.arm.cortexm4 (null): */

    /* Content from ti.catalog (null): */

    /* Content from ti.catalog.peripherals.hdvicp2 (null): */

    /* Content from xdc.platform (null): */

    /* Content from xdc.cfg (null): */

    /* Content from ti.catalog.arm.cortexm3 (null): */

    /* Content from ti.catalog.arm.cortexm4.tiva.ce (null): */

    /* Content from ti.platforms.tiva (null): */

    /* Content from ti.sysbios.family.arm.lm4 (null): */

    /* Content from ti.sysbios.family.arm.m3 (ti/sysbios/family/arm/m3/linkcmd.xdt): */
    -u _c_int00
    --retain "*(.resetVecs)"
    ti_sysbios_family_arm_m3_Hwi_nvic = 0xe000e000;

    /* Content from ti.sysbios.hal (null): */

    /* Content from ti.sysbios.knl (null): */

    /* Content from ti.sysbios (null): */

    /* Content from ti.sysbios.syncs (null): */

    /* Content from ti.sysbios.gates (null): */

    /* Content from ti.sysbios.fatfs (null): */

    /* Content from ti.drivers (null): */

    /* Content from ti.tirtos (null): */

    /* Content from ti.sysbios.xdcruntime (null): */

    /* Content from ti.sysbios.heaps (null): */

    /* Content from ti.uia.loggers (null): */

    /* Content from ti.sysbios.utils (null): */

    /* Content from ti.uia.sysbios (null): */

    /* Content from configPkg (null): */

    /* Content from xdc.services.io (null): */

    /* Content from ti.drivers.ports (null): */

    /* Content from ti.drivers.ports.tirtos (null): */

    /*
    * symbolic aliases for static instance objects
    */
    xdc_runtime_Startup__EXECFXN__C = 1;
    xdc_runtime_Startup__RESETFXN__C = 1;
    TSK_idle = ti_sysbios_knl_Task_Object__table__V + 304;


    SECTIONS
    {
    .bootVecs: type = DSECT
    .vecs: load > 0x20000000
    .resetVecs: load > 0x0

    xdc.meta: type = COPY
    }

    EKU.map file

    ******************************************************************************
    TI ARM Linker PC v5.2.5
    ******************************************************************************
    >> Linked Tue Mar 15 17:37:36 2016

    OUTPUT FILE NAME: <EKU_Firmware.out>
    ENTRY POINT SYMBOL: "_c_int00" address: 00004109


    MEMORY CONFIGURATION

    name origin length used unused attr fill
    ---------------------- -------- --------- -------- -------- ---- --------
    RAM 00000020 ffffffe0 00000360 fffffc80 RWIX


    SEGMENT ALLOCATION MAP

    run origin load origin length init length attrs members
    ---------- ----------- ---------- ----------- ----- -------
    00000000 00000000 00006392 00006392 r-x
    00000000 00000000 0000003c 0000003c r-- .resetVecs
    00000040 00000040 00006352 00006352 r-x .text
    00006400 00006400 0000303c 00000000 rw-
    00006400 00006400 0000303c 00000000 rw- .bss
    0000943c 0000943c 000020d2 000020d2 r--
    0000943c 0000943c 000020d2 000020d2 r-- .const
    0000b510 0000b510 00001654 00000000 rw-
    0000b510 0000b510 00001000 00000000 rw- .stack
    0000c510 0000c510 00000654 00000000 rw- .data
    0000cb80 0000cb80 00000084 00000000 rw-
    0000cb80 0000cb80 00000084 00000000 rw- .bss:.common
    0000cc08 0000cc08 00000380 00000380 r--
    0000cc08 0000cc08 00000380 00000380 r-- .cinit
    20000000 20000000 00000360 00000000 rw-
    20000000 20000000 00000360 00000000 rw- .vecs


    SECTION ALLOCATION MAP

    output attributes/
    section page origin length input sections
    -------- ---- ---------- ---------- ----------------
    .bootVecs
    * 0 00000000 00000008 DSECT
    00000000 00000008 boot.aem4f : boot.oem4f (.bootVecs)

    .resetVecs
    * 0 00000000 0000003c
    00000000 0000003c spiloopback_pem4f.oem4f (.resetVecs)

    .text 0 00000040 00006352
    00000040 00000430 sysbios.aem4f : BIOS.obj (.text:ti_sysbios_family_arm_m3_Hwi_excDumpRegs__I)
    00000470 0000034c ti.targets.arm.rtsarm.aem4f : System.oem4f (.text:xdc_runtime_System_doPrint__I)
    000007bc 000002d4 rtsv7M4_T_le_v4SPD16_eabi.

    ESU.map

    ******************************************************************************
    TI ARM Linker PC v5.2.5
    ******************************************************************************
    >> Linked Tue Mar 15 17:08:37 2016

    OUTPUT FILE NAME: <ESU_Firmware_UART.out>
    ENTRY POINT SYMBOL: "_c_int00" address: 00005935


    MEMORY CONFIGURATION

    name origin length used unused attr fill
    ---------------------- -------- --------- -------- -------- ---- --------
    FLASH 00000000 00040000 0000b50e 00034af2 R X
    SRAM 20000000 00008000 00006a05 000015fb RW X


    SEGMENT ALLOCATION MAP

    run origin load origin length init length attrs members
    ---------- ----------- ---------- ----------- ----- -------
    00000000 00000000 0000b518 0000b518 r-x
    00000000 00000000 0000003c 0000003c r-- .resetVecs
    00000040 00000040 000083fa 000083fa r-x .text
    0000843c 0000843c 00002b20 00002b20 r-- .const
    0000af60 0000af60 000005b8 000005b8 r-- .cinit
    20000000 20000000 00000360 00000000 rw-
    20000000 20000000 00000360 00000000 rw- .vecs
    20000400 20000400 000066a8 00000000 rw-
    20000400 20000400 00004e55 00000000 rw- .bss
    20005258 20005258 00001000 00000000 rw- .stack
    20006258 20006258 00000850 00000000 rw- .data


    SECTION ALLOCATION MAP

    output attributes/
    section page origin length input sections
    -------- ---- ---------- ---------- ----------------
    .resetVecs
    * 0 00000000 0000003c
    00000000 0000003c spiloopback_pem4f.oem4f (.resetVecs)

    .text 0 00000040 000083fa
    00000040 00000430 sysbios.aem4f : BIOS.obj (.text:ti_sysbios_family_arm_m3_Hwi_excDumpRegs__I)
    00000470 0000034c ti.targets.arm.rtsarm.aem4f : System.oem4f (.text:xdc_runtime_System_doPrint__I)

  • Hi Jonathan,

    For file differences, you can use a tool such as Beyond Compare: www.scootersoftware.com/. There are also many other ones available out there.

    For ARM compiler releases, you need to get them thru CCS, as described in processors.wiki.ti.com/.../Compiler_Releases

    In any case, I compared your debug and release generated linker command files, and they look essentially identical.

    I don't know how 'EKU' fits in. Your original post said you were moving from Debug to Release configuration in your application "ESU_Firmware_UART.out" using the 'Build Configurations->Set Active->Debug/Release' selection in CCS when right-clicking on your project. Is this not what you are trying to do?

    Best regards,
    Vincent
  • Yes, I found that the two linker.cmd files are the same. Shouldn't they be different since one is for Release build and the other is for Debug build? anyway, that seems to be a dead end. Any idea where to look from here?

    As for the EKU, I am offering more information for the problem. Here is the story. EKU firmware was derived from the ESU firmware for a different hardware module. These modules use the same MCU and similar firmware structure. However, I found that the EKU firmware Release mode builds ok, it does not build in Debug mode. ESU firmware is the opposite. So I am pasting the Debug mode .map file for both the ESU and EKU firmware here.

    Jonathan

  • Hi Jonathan,

    The files may or may not be the same. It's up to your application.

    'Debug' and 'Release' are just two different configurations that have the potential to use two different sets of build options. The actual difference is really left to the user. You can make them identical if you wanted. In some examples we have them tied to the 'Debug' and 'Release' profiles in XDC (ie. the content in the Debug/configPkg and Release/configPkg folders), but the generated content may be nearly identical there as well in other cases.

    I'd suggest you compare the build options for each configuration in your 'ESU' project. You should be able to view them by right-clicking on the project in CCS and selecting Properties->CCS Build->XDCTools, Properties->CCS Build->GNU Compiler and Properties->CCS Build->GNU Linker (might be named slightly differently if you are not using the GNU compiler). Once you get rid of all the differences you should get the same build in each case. Then you can add back (or remove) any extra build options you may desire in your Release configuration. That way you can identify what is causing the Release build to break.

    Best regards,
    Vincent
  • At this point, please allow me to narrow the scope of this question. I found that when I build in Debug mode and Release mode, the .map files are different. In the Release mode, the .map file Memory Configuration shows both FLASH and SRAM, but in the Debug mode, the .map file Memory Configuration shows only RAM. Further more, in the Debug mode .map file, under the Segment Allocation Map, it contains .bootVecs , but in the Release mode .map file, it does not exits. What setting(s) in the two different modes can cause these differences in the .map files? Please see the snippets of the .map files below:

    Thank you.

    Jonathan

    Release configuration .map file :

    ******************************************************************************
    TI ARM Linker PC v5.2.5
    ******************************************************************************
    >> Linked Thu Mar 17 10:27:50 2016

    OUTPUT FILE NAME: <EKU_Firmware.out>
    ENTRY POINT SYMBOL: "_c_int00" address: 00003f31


    MEMORY CONFIGURATION

    name origin length used unused attr fill
    ---------------------- -------- --------- -------- -------- ---- --------
    FLASH 00000000 00040000 0000836a 00037c96 R X
    SRAM 20000000 00008000 00004a58 000035a8 RW X


    SEGMENT ALLOCATION MAP

    run origin load origin length init length attrs members
    ---------- ----------- ---------- ----------- ----- -------
    00000000 00000000 00008370 00008370 r-x
    00000000 00000000 0000003c 0000003c r-- .resetVecs
    00000040 00000040 00005d9a 00005d9a r-x .text
    00005ddc 00005ddc 000020a4 000020a4 r-- .const
    00007e80 00007e80 000004f0 000004f0 r-- .cinit
    20000000 20000000 00000360 00000000 rw-
    20000000 20000000 00000360 00000000 rw- .vecs
    20000400 20000400 000046f8 00000000 rw-
    20000400 20000400 000030a4 00000000 rw- .bss
    200034a4 200034a4 00001000 00000000 rw- .stack
    200044a4 200044a4 00000654 00000000 rw- .data


    SECTION ALLOCATION MAP

    output attributes/
    section page origin length input sections
    -------- ---- ---------- ---------- ----------------
    .resetVecs
    * 0 00000000 0000003c
    00000000 0000003c spiloopback_pem4f.oem4f (.resetVecs)

    .text 0 00000040 00005d9a
    00000040 00000430 sysbios.aem4f : BIOS.obj (.text:ti_sysbios_family_arm_m3_Hwi_excDumpRegs__I)
    00000470 0000034c ti.targets.arm.rtsarm.aem4f : System.oem4f (.text:xdc_runtime_System_doPrint__I)
    000007bc 000002d4 rtsv7M4_T_le_v4SPD16_eabi.lib : trgdrv.obj (.text)

    Debug configuration .map file : 

    ******************************************************************************
    TI ARM Linker PC v5.2.5
    ******************************************************************************
    >> Linked Thu Mar 17 10:25:57 2016

    OUTPUT FILE NAME: <EKU_Firmware.out>
    ENTRY POINT SYMBOL: "_c_int00" address: 00003d19


    MEMORY CONFIGURATION

    name origin length used unused attr fill
    ---------------------- -------- --------- -------- -------- ---- --------
    RAM 00000020 ffffffe0 00000360 fffffc80 RWIX


    SEGMENT ALLOCATION MAP

    run origin load origin length init length attrs members
    ---------- ----------- ---------- ----------- ----- -------
    00000000 00000000 00005bc2 00005bc2 r-x
    00000000 00000000 0000003c 0000003c r-- .resetVecs
    00000040 00000040 00005b82 00005b82 r-x .text
    00005c00 00005c00 0000303c 00000000 rw-
    00005c00 00005c00 0000303c 00000000 rw- .bss
    00008c3c 00008c3c 000020a4 000020a4 r--
    00008c3c 00008c3c 000020a4 000020a4 r-- .const
    0000ace0 0000ace0 00001654 00000000 rw-
    0000ace0 0000ace0 00001000 00000000 rw- .stack
    0000bce0 0000bce0 00000654 00000000 rw- .data
    0000c340 0000c340 00000084 00000000 rw-
    0000c340 0000c340 00000084 00000000 rw- .bss:.common
    0000c3c8 0000c3c8 00000380 00000380 r--
    0000c3c8 0000c3c8 00000380 00000380 r-- .cinit
    20000000 20000000 00000360 00000000 rw-
    20000000 20000000 00000360 00000000 rw- .vecs


    SECTION ALLOCATION MAP

    output attributes/
    section page origin length input sections
    -------- ---- ---------- ---------- ----------------
    .bootVecs
    * 0 00000000 00000008 DSECT
    00000000 00000008 boot.aem4f : boot.oem4f (.bootVecs)

    .resetVecs
    * 0 00000000 0000003c
    00000000 0000003c spiloopback_pem4f.oem4f (.resetVecs)

    .text 0 00000040 00005b82
    00000040 00000430 sysbios.aem4f : BIOS.obj (.text:ti_sysbios_family_arm_m3_Hwi_excDumpRegs__I)
    00000470 0000034c ti.targets.arm.rtsarm.aem4f : System.oem4f (.text:xdc_runtime_System_doPrint__I)
    000007bc 000002d4 rtsv7M4_T_le_v4SPD16_eabi.lib : trgdrv.obj (.text)

  • Hi Jonathan,

    The memory map is specified through your linker command files. Please show us the output in your console when you build in each configuration. The output would show the command line used to invoke the linker. This would tell you which linker command file is being used in each case. My guess is you are using a different linker command file for each configuration, and they in turn define different Memory Configurations.

    Best regards,
    Vincent
  • Not sure where the linker command file is specified.

    Console output :


    **** Build of configuration Debug for project EKU_Firmware ****

    "C:\\ti\\ccsv612\\ccsv6\\utils\\bin\\gmake" -k all
    making ../src/sysbios/sysbios.aem4f ...
    gmake[1]: Entering directory `C:/TI_RTOS/Workspace/EKU_Firmware/src/sysbios'
    clem4f C:/ti/tirtos_tivac_2_14_00_10/products/bios_6_42_01_20/packages/ti/sysbios/BIOS.c ...
    asmem4f C:/ti/tirtos_tivac_2_14_00_10/products/bios_6_42_01_20/packages/ti/sysbios/family/arm/m3/Hwi_asm.sv7M ...
    asmem4f C:/ti/tirtos_tivac_2_14_00_10/products/bios_6_42_01_20/packages/ti/sysbios/family/arm/m3/Hwi_asm_switch.sv7M ...
    asmem4f C:/ti/tirtos_tivac_2_14_00_10/products/bios_6_42_01_20/packages/ti/sysbios/family/arm/m3/IntrinsicsSupport_asm.sv7M ...
    asmem4f C:/ti/tirtos_tivac_2_14_00_10/products/bios_6_42_01_20/packages/ti/sysbios/family/arm/m3/TaskSupport_asm.sv7M ...
    arem4f BIOS.obj m3_Hwi_asm.obj m3_Hwi_asm_switch.obj m3_IntrinsicsSupport_asm.obj m3_TaskSupport_asm.obj ...
    gmake[1]: Leaving directory `C:/TI_RTOS/Workspace/EKU_Firmware/src/sysbios'
    'Building file: ../spiloopback.cfg'
    'Invoking: XDCtools'
    "C:/ti/xdctools_3_31_01_33_core/xs" --xdcpath="C:/ti/tirtos_tivac_2_14_00_10/packages;C:/ti/tirtos_tivac_2_14_00_10/products/bios_6_42_01_20/packages;C:/ti/tirtos_tivac_2_14_00_10/products/ndk_2_24_03_35/packages;C:/ti/tirtos_tivac_2_14_00_10/products/uia_2_00_02_39/packages;C:/ti/ccsv612/ccsv6/ccs_base;" xdc.tools.configuro -o configPkg -t ti.targets.arm.elf.M4F -p ti.platforms.tiva:TM4C123GH6PM -r debug -c "C:/ti/ccsv612/ccsv6/tools/compiler/ti-cgt-arm_5.2.5" --compileOptions "-mv7M4 --code_state=16 --float_support=FPv4SPD16 --abi=eabi -me --include_path=\"C:/ti/ccsv612/ccsv6/tools/compiler/ti-cgt-arm_5.2.5/include\" --include_path=\"C:/TI_RTOS/Workspace/EKU_Firmware\" --include_path=\"C:/ti/tirtos_tivac_2_14_00_10/products/TivaWare_C_Series-2.1.1.71b\" --include_path=\"C:/ti/tirtos_tivac_2_14_00_10/packages/ti/drivers/wifi/cc3100/Simplelink\" --include_path=\"C:/ti/tirtos_tivac_2_14_00_10/packages/ti/drivers/wifi/cc3100/Simplelink/Include\" -g --gcc --define=ccs=\"ccs\" --define=PART_TM4C123GH6PM --define=ccs --define=TIVAWARE --verbose_diagnostics --diag_warning=225 --diag_warning=255 --display_error_number --diag_wrap=off --issue_remarks --gen_func_subsections=on " "../spiloopback.cfg"
    making package.mak (because of package.bld) ...
    generating interfaces for package configPkg (because package/package.xdc.inc is older than package.xdc) ...
    configuring spiloopback.xem4f from package/cfg/spiloopback_pem4f.cfg ...
    generating custom ti.sysbios library makefile ...
    Starting build of library sources ...
    making C:/TI_RTOS/Workspace/EKU_Firmware/src/sysbios/sysbios.aem4f ...
    gmake[1]: Entering directory `C:/TI_RTOS/Workspace/EKU_Firmware/src/sysbios'
    gmake[1]: Nothing to be done for `all'.
    gmake[1]: Leaving directory `C:/TI_RTOS/Workspace/EKU_Firmware/src/sysbios'
    Build of libraries done.
    clem4f package/cfg/spiloopback_pem4f.c ...
    "package/cfg/spiloopback_pem4f.c", line 2659: remark #2142-D: comparison
    between signed and unsigned operands
    if ((printCount <= 0) || (printCount > size)) {
    ^

    "package/cfg/spiloopback_pem4f.c", line 2728: remark #880-D: parameter
    "notused" was never referenced
    Void ti_sysbios_BIOS_atExitFunc__I(Int notused)
    ^

    "package/cfg/spiloopback_pem4f.c", line 2842: remark #880-D: parameter "arg"
    was never referenced
    Void ti_sysbios_knl_Clock_doTick__I(UArg arg)
    ^

    "package/cfg/spiloopback_pem4f.c", line 3248: remark #880-D: parameter "mask"
    was never referenced
    Bool ti_uia_loggers_LoggerStopMode_filterOutEvent__I(xdc_runtime_Diags_Mask mask)
    ^

    "package/cfg/spiloopback_pem4f.c", line 3455: remark #880-D: parameter "obj"
    was never referenced
    Void ti_uia_loggers_LoggerStopMode_setFilterLevel__E(ti_uia_loggers_LoggerStopMode_Object *obj,
    ^

    "package/cfg/spiloopback_pem4f.c", line 3456: remark #880-D: parameter "mask"
    was never referenced
    xdc_runtime_Diags_Mask mask,
    ^

    "package/cfg/spiloopback_pem4f.c", line 3457: remark #880-D: parameter
    "filterLevel" was never referenced
    xdc_runtime_Diags_EventLevel filterLevel)
    ^

    "package/cfg/spiloopback_pem4f.c", line 3469: remark #880-D: parameter "obj"
    was never referenced
    xdc_runtime_Diags_Mask ti_uia_loggers_LoggerStopMode_getFilterLevel__E (ti_uia_loggers_LoggerStopMode_Object *obj,
    ^

    "package/cfg/spiloopback_pem4f.c", line 3470: remark #880-D: parameter "level"
    was never referenced
    xdc_runtime_Diags_EventLevel level)
    ^

    "package/cfg/spiloopback_pem4f.c", line 18200: remark #880-D: parameter "__psz"
    was never referenced
    xdc_SizeT __psz,
    ^

    "package/cfg/spiloopback_pem4f.c", line 18273: remark #880-D: parameter "__psz"
    was never referenced
    xdc_SizeT __psz,
    ^

    "package/cfg/spiloopback_pem4f.c", line 18439: remark #880-D: parameter "__psz"
    was never referenced
    xdc_SizeT __psz,
    ^

    "package/cfg/spiloopback_pem4f.c", line 18605: remark #880-D: parameter "__psz"
    was never referenced
    xdc_SizeT __psz,
    ^

    "package/cfg/spiloopback_pem4f.c", line 18678: remark #880-D: parameter "__psz"
    was never referenced
    xdc_SizeT __psz,
    ^

    "package/cfg/spiloopback_pem4f.c", line 18912: remark #880-D: parameter "__psz"
    was never referenced
    xdc_SizeT __psz,
    ^

    "package/cfg/spiloopback_pem4f.c", line 18985: remark #880-D: parameter "__psz"
    was never referenced
    xdc_SizeT __psz,
    ^

    "package/cfg/spiloopback_pem4f.c", line 19064: remark #880-D: parameter "__psz"
    was never referenced
    xdc_SizeT __psz,
    ^

    "package/cfg/spiloopback_pem4f.c", line 19764: remark #880-D: parameter "__osz"
    was never referenced
    xdc_SizeT __osz,
    ^

    "package/cfg/spiloopback_pem4f.c", line 19767: remark #880-D: parameter "__psz"
    was never referenced
    xdc_SizeT __psz,
    ^

    "package/cfg/spiloopback_pem4f.c", line 19975: remark #880-D: parameter "__osz"
    was never referenced
    xdc_SizeT __osz,
    ^

    "package/cfg/spiloopback_pem4f.c", line 19978: remark #880-D: parameter "__psz"
    was never referenced
    xdc_SizeT __psz,
    ^

    "package/cfg/spiloopback_pem4f.c", line 20198: remark #880-D: parameter "__osz"
    was never referenced
    xdc_SizeT __osz,
    ^

    "package/cfg/spiloopback_pem4f.c", line 20199: remark #880-D: parameter "__aa"
    was never referenced
    const xdc_Ptr __aa,
    ^

    "package/cfg/spiloopback_pem4f.c", line 20201: remark #880-D: parameter "__psz"
    was never referenced
    xdc_SizeT __psz,
    ^

    "package/cfg/spiloopback_pem4f.c", line 20379: remark #880-D: parameter "__osz"
    was never referenced
    xdc_SizeT __osz,
    ^

    "package/cfg/spiloopback_pem4f.c", line 20380: remark #880-D: parameter "__aa"
    was never referenced
    const xdc_Ptr __aa,
    ^

    "package/cfg/spiloopback_pem4f.c", line 20382: remark #880-D: parameter "__psz"
    was never referenced
    xdc_SizeT __psz,
    ^

    "package/cfg/spiloopback_pem4f.c", line 20560: remark #880-D: parameter "__osz"
    was never referenced
    xdc_SizeT __osz,
    ^

    "package/cfg/spiloopback_pem4f.c", line 20561: remark #880-D: parameter "__aa"
    was never referenced
    const xdc_Ptr __aa,
    ^

    "package/cfg/spiloopback_pem4f.c", line 20563: remark #880-D: parameter "__psz"
    was never referenced
    xdc_SizeT __psz,
    ^

    "package/cfg/spiloopback_pem4f.c", line 20741: remark #880-D: parameter "__osz"
    was never referenced
    xdc_SizeT __osz,
    ^

    "package/cfg/spiloopback_pem4f.c", line 20744: remark #880-D: parameter "__psz"
    was never referenced
    xdc_SizeT __psz,
    ^

    "package/cfg/spiloopback_pem4f.c", line 20993: remark #880-D: parameter "__osz"
    was never referenced
    xdc_SizeT __osz,
    ^

    "package/cfg/spiloopback_pem4f.c", line 20996: remark #880-D: parameter "__psz"
    was never referenced
    xdc_SizeT __psz,
    ^

    "package/cfg/spiloopback_pem4f.c", line 21245: remark #880-D: parameter "__osz"
    was never referenced
    xdc_SizeT __osz,
    ^

    "package/cfg/spiloopback_pem4f.c", line 21246: remark #880-D: parameter "__aa"
    was never referenced
    const xdc_Ptr __aa,
    ^

    "package/cfg/spiloopback_pem4f.c", line 21248: remark #880-D: parameter "__psz"
    was never referenced
    xdc_SizeT __psz,
    ^

    "package/cfg/spiloopback_pem4f.c", line 21479: remark #880-D: parameter "__osz"
    was never referenced
    xdc_SizeT __osz,
    ^

    "package/cfg/spiloopback_pem4f.c", line 21482: remark #880-D: parameter "__psz"
    was never referenced
    xdc_SizeT __psz,
    ^

    "package/cfg/spiloopback_pem4f.c", line 21714: remark #880-D: parameter "__osz"
    was never referenced
    xdc_SizeT __osz,
    ^

    "package/cfg/spiloopback_pem4f.c", line 21715: remark #880-D: parameter "__aa"
    was never referenced
    const xdc_Ptr __aa,
    ^

    "package/cfg/spiloopback_pem4f.c", line 21717: remark #880-D: parameter "__psz"
    was never referenced
    xdc_SizeT __psz,
    ^

    "package/cfg/spiloopback_pem4f.c", line 21934: remark #880-D: parameter "__osz"
    was never referenced
    xdc_SizeT __osz,
    ^

    "package/cfg/spiloopback_pem4f.c", line 21935: remark #880-D: parameter "__aa"
    was never referenced
    const xdc_Ptr __aa,
    ^

    "package/cfg/spiloopback_pem4f.c", line 21937: remark #880-D: parameter "__psz"
    was never referenced
    xdc_SizeT __psz,
    ^

    "package/cfg/spiloopback_pem4f.c", line 22115: remark #880-D: parameter "__osz"
    was never referenced
    xdc_SizeT __osz,
    ^

    "package/cfg/spiloopback_pem4f.c", line 22118: remark #880-D: parameter "__psz"
    was never referenced
    xdc_SizeT __psz,
    ^

    "package/cfg/spiloopback_pem4f.c", line 22297: remark #880-D: parameter "__osz"
    was never referenced
    xdc_SizeT __osz,
    ^

    "package/cfg/spiloopback_pem4f.c", line 22300: remark #880-D: parameter "__psz"
    was never referenced
    xdc_SizeT __psz,
    ^

    "package/cfg/spiloopback_pem4f.c", line 22496: remark #880-D: parameter "__osz"
    was never referenced
    xdc_SizeT __osz,
    ^

    "package/cfg/spiloopback_pem4f.c", line 22499: remark #880-D: parameter "__psz"
    was never referenced
    xdc_SizeT __psz,
    ^

    "package/cfg/spiloopback_pem4f.c", line 22758: remark #880-D: parameter "__osz"
    was never referenced
    xdc_SizeT __osz,
    ^

    "package/cfg/spiloopback_pem4f.c", line 22759: remark #880-D: parameter "__aa"
    was never referenced
    const xdc_Ptr __aa,
    ^

    "package/cfg/spiloopback_pem4f.c", line 22761: remark #880-D: parameter "__psz"
    was never referenced
    xdc_SizeT __psz,
    ^

    'Finished building: ../spiloopback.cfg'
    ' '
    'Building file: ../EK_TM4C123GXL.c'
    'Invoking: ARM Compiler'
    "C:/ti/ccsv612/ccsv6/tools/compiler/ti-cgt-arm_5.2.5/bin/armcl" -mv7M4 --code_state=16 --float_support=FPv4SPD16 --abi=eabi -me --include_path="C:/ti/ccsv612/ccsv6/tools/compiler/ti-cgt-arm_5.2.5/include" --include_path="C:/TI_RTOS/Workspace/EKU_Firmware" --include_path="C:/ti/tirtos_tivac_2_14_00_10/products/TivaWare_C_Series-2.1.1.71b" --include_path="C:/ti/tirtos_tivac_2_14_00_10/packages/ti/drivers/wifi/cc3100/Simplelink" --include_path="C:/ti/tirtos_tivac_2_14_00_10/packages/ti/drivers/wifi/cc3100/Simplelink/Include" -g --gcc --define=ccs="ccs" --define=PART_TM4C123GH6PM --define=ccs --define=TIVAWARE --verbose_diagnostics --diag_warning=225 --diag_warning=255 --display_error_number --diag_wrap=off --issue_remarks --gen_func_subsections=on --preproc_with_compile --preproc_dependency="EK_TM4C123GXL.pp" --cmd_file="configPkg/compiler.opt" "../EK_TM4C123GXL.c"
    "../EK_TM4C123GXL.c", line 86: remark #880-D: parameter "arg" was never
    referenced
    static Void dmaErrorHwi(UArg arg)
    ^

    'Finished building: ../EK_TM4C123GXL.c'
    ' '
    'Building file: ../spiloopback.c'
    'Invoking: ARM Compiler'
    "C:/ti/ccsv612/ccsv6/tools/compiler/ti-cgt-arm_5.2.5/bin/armcl" -mv7M4 --code_state=16 --float_support=FPv4SPD16 --abi=eabi -me --include_path="C:/ti/ccsv612/ccsv6/tools/compiler/ti-cgt-arm_5.2.5/include" --include_path="C:/TI_RTOS/Workspace/EKU_Firmware" --include_path="C:/ti/tirtos_tivac_2_14_00_10/products/TivaWare_C_Series-2.1.1.71b" --include_path="C:/ti/tirtos_tivac_2_14_00_10/packages/ti/drivers/wifi/cc3100/Simplelink" --include_path="C:/ti/tirtos_tivac_2_14_00_10/packages/ti/drivers/wifi/cc3100/Simplelink/Include" -g --gcc --define=ccs="ccs" --define=PART_TM4C123GH6PM --define=ccs --define=TIVAWARE --verbose_diagnostics --diag_warning=225 --diag_warning=255 --display_error_number --diag_wrap=off --issue_remarks --gen_func_subsections=on --preproc_with_compile --preproc_dependency="spiloopback.pp" --cmd_file="configPkg/compiler.opt" "../spiloopback.c"
    "../spiloopback.c", line 186: warning #552-D: variable "dummy" was set but
    never used
    unsigned short dummy;
    ^

    "../spiloopback.c", line 272: warning #552-D: variable "transferOK" was set
    but never used
    bool transferOK;
    ^

    "../spiloopback.c", line 353: warning #552-D: variable "transferOK" was set
    but never used
    bool transferOK;
    ^

    "../spiloopback.c", line 434: warning #552-D: variable "transferOK" was set
    but never used
    bool transferOK;
    ^

    "../spiloopback.c", line 581: remark #2142-D: comparison between signed and
    unsigned operands
    for ( i = 0; i<masterTransaction.count; i++)
    ^

    "../spiloopback.c", line 569: warning #179-D: variable "dummy" was declared
    but never referenced
    unsigned short dummy;
    ^

    "../spiloopback.c", line 634: warning #179-D: variable "i" was declared but
    never referenced
    int i;
    ^

    "../spiloopback.c", line 938: warning #552-D: variable "transferOK" was set
    but never used
    bool transferOK;
    ^

    "../spiloopback.c", line 1006: warning #552-D: variable "transferOK" was set
    but never used
    bool transferOK;
    ^

    "../spiloopback.c", line 1380: warning #552-D: variable "oldEncoderValue" was
    set but never used
    unsigned long oldEncoderValue;
    ^

    "../spiloopback.c", line 1449: warning #225-D: function "SysCtlDelay" declared
    implicitly
    SysCtlDelay(20000); // creates delay - TivaWare fxn
    ^

    "../spiloopback.c", line 1463: warning #225-D: function "SysCtlDelay" declared
    implicitly
    SysCtlDelay(3000000); // creates ~500ms delay - TivaWare fxn
    ^

    "../spiloopback.c", line 1947: remark #880-D: parameter "arg0" was never
    referenced
    Void echoFxn(UArg arg0, UArg arg1)
    ^

    "../spiloopback.c", line 1947: remark #880-D: parameter "arg1" was never
    referenced
    Void echoFxn(UArg arg0, UArg arg1)
    ^

    "../spiloopback.c", line 1950: warning #179-D: variable "input" was declared
    but never referenced
    char input;
    ^

    'Finished building: ../spiloopback.c'
    ' '
    'Building target: EKU_Firmware.out'
    'Invoking: ARM Linker'
    "C:/ti/ccsv612/ccsv6/tools/compiler/ti-cgt-arm_5.2.5/bin/armcl" -mv7M4 --code_state=16 --float_support=FPv4SPD16 --abi=eabi -me -g --gcc --define=ccs="ccs" --define=PART_TM4C123GH6PM --define=ccs --define=TIVAWARE --verbose_diagnostics --diag_warning=225 --diag_warning=255 --display_error_number --diag_wrap=off --issue_remarks --gen_func_subsections=on -z -m"EKU_Firmware.map" --heap_size=0 --stack_size=512 -i"C:/ti/ccsv612/ccsv6/tools/compiler/ti-cgt-arm_5.2.5/lib" -i"C:/ti/ccsv612/ccsv6/tools/compiler/ti-cgt-arm_5.2.5/include" --reread_libs --warn_sections --diag_wrap=off --display_error_number --xml_link_info="EKU_Firmware_linkInfo.xml" --rom_model -o "EKU_Firmware.out" "./EK_TM4C123GXL.obj" "./spiloopback.obj" "../EK_TM4C123GXL.cmd" -l"configPkg/linker.cmd" -l"libc.a" -l"C:/ti/tirtos_tivac_2_14_00_10/products/TivaWare_C_Series-2.1.1.71b/grlib/ccs/Debug/grlib.lib" -l"C:/ti/tirtos_tivac_2_14_00_10/products/TivaWare_C_Series-2.1.1.71b/usblib/ccs/Debug/usblib.lib" -l"C:/ti/tirtos_tivac_2_14_00_10/products/TivaWare_C_Series-2.1.1.71b/driverlib/ccs/Debug/driverlib.lib"
    <Linking>
    remark #10205-D: automatic RTS selection: linking in "rtsv7M4_T_le_v4SPD16_eabi.lib" in place of index library "libc.a"
    'Finished building target: EKU_Firmware.out'
    ' '

    **** Build Finished ****

  • HI Jonathan,

    The linker command files are specified during the linker invocation:

    'Invoking: ARM Linker'
    "C:/ti/ccsv612/ccsv6/tools/compiler/ti-cgt-arm_5.2.5/bin/armcl" -mv7M4 --code_state=16 --float_support=FPv4SPD16 --abi=eabi -me -g --gcc --define=ccs="ccs" --define=PART_TM4C123GH6PM --define=ccs --define=TIVAWARE --verbose_diagnostics --diag_warning=225 --diag_warning=255 --display_error_number --diag_wrap=off --issue_remarks --gen_func_subsections=on -z -m"EKU_Firmware.map" --heap_size=0 --stack_size=512 -i"C:/ti/ccsv612/ccsv6/tools/compiler/ti-cgt-arm_5.2.5/lib" -i"C:/ti/ccsv612/ccsv6/tools/compiler/ti-cgt-arm_5.2.5/include" --reread_libs --warn_sections --diag_wrap=off --display_error_number --xml_link_info="EKU_Firmware_linkInfo.xml" --rom_model -o "EKU_Firmware.out" "./EK_TM4C123GXL.obj" "./spiloopback.obj" "../EK_TM4C123GXL.cmd" -l"configPkg/linker.cmd" -l"libc.a" -l"C:/ti/tirtos_tivac_2_14_00_10/products/TivaWare_C_Series-2.1.1.71b/grlib/ccs/Debug/grlib.lib" -l"C:/ti/tirtos_tivac_2_14_00_10/products/TivaWare_C_Series-2.1.1.71b/usblib/ccs/Debug/usblib.lib" -l"C:/ti/tirtos_tivac_2_14_00_10/products/TivaWare_C_Series-2.1.1.71b/driverlib/ccs/Debug/driverlib.lib"

    You can refer to your linker documentation for details on all the options. But for our discussion here, you are using 'EK_TM4C123GXL.cmd' and 'configPkg/linker.cmd' as linker command files. Now you just need to do the same for the Release configuration and see what the differences are.

    Best regards,
    Vincent