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.

CCS/TMS320C6745: DSPRAM memory range overlaps existing memory range SHDSPL2RAM

Part Number: TMS320C6745

Tool/software: Code Composer Studio

Hi,

I'm working with TMS320C6745 board with code composer studio v8.1. When i build this project i got following error message. Can someone resolve my issue.

**** Build of configuration Debug for project SPI_ADC_Interface ****

"C:\\ti\\ccsv8\\utils\\bin\\gmake" -k -j 8 all -O

Building target: "SPI_ADC_Interface.out"
Invoking: C6000 Linker
"C:/ti/ccsv8/tools/compiler/ti-cgt-c6000_8.3.3/bin/cl6x" -mv6740 --define=c6745 -g --diag_warning=225 --diag_wrap=off --display_error_number -z -m"SPI_ADC_Interface.map" --heap_size=0x800 --stack_size=0x800 -i"C:/ti/ccsv8/tools/compiler/ti-cgt-c6000_8.3.3/lib" -i"C:/ti/ccsv8/tools/compiler/ti-cgt-c6000_8.3.3/include" --reread_libs --diag_wrap=off --display_error_number --warn_sections --xml_link_info="SPI_ADC_Interface_linkInfo.xml" --rom_model -o "SPI_ADC_Interface.out" "./main.obj" "../C6745.cmd" "../linker.cmd" -llibc.a
<Linking>
error #10008-D: cannot find file "rts64plus.lib"
"../linker.cmd", line 21: error #10264: DSPRAM memory range overlaps existing memory range SHDSPL2RAM
"../linker.cmd", line 23: error #10264: SDRAM memory range overlaps existing memory range EMIFBSDRAM
warning #10373-D: library "../../common/Debug/driver_lib.lib" contains TI-COFF object files which are incompatible with the ELF output file. Ensure you are using the proper library.
warning #10373-D: library "../../common/Debug/driver_lib.lib" contains TI-COFF object files which are incompatible with the ELF output file. Ensure you are using the proper library.

undefined first referenced
symbol in file
--------- ----------------
C6745_init ./main.obj
C6745_wait ./main.obj

error #10234-D: unresolved symbols remain
error #10010: errors encountered during linking; "SPI_ADC_Interface.out" not built

>> Compilation failure
makefile:142: recipe for target 'SPI_ADC_Interface.out' failed
gmake[1]: *** [SPI_ADC_Interface.out] Error 1
makefile:138: recipe for target 'all' failed
gmake: *** [all] Error 2

**** Build Finished ****

My linker file is as follows.

/*
* Copyright 2008 by Spectrum Digital Incorporated.
* All rights reserved. Property of Spectrum Digital Incorporated.
*/

/*
* Linker command file
*
*/

-l rts64plus.lib
-l ../../common/Debug/driver_lib.lib

-stack 0x00000800 /* Stack Size */
-heap 0x00000800 /* Heap Size */

MEMORY
{
VECS: o = 0xFFFF0000 l = 0x00000080
ARMRAM: o = 0xFFFF0080 l = 0x00001f80
DSPRAM: o = 0x11800000 l = 0x00040000
SHAREDRAM: o = 0x80000000 l = 0x00020000
SDRAM: o = 0xC0000000 l = 0x20000000
}

SECTIONS
{
.bss > SHAREDRAM
.cinit > SHAREDRAM
.cio > SHAREDRAM
.const > SHAREDRAM
.stack > SHAREDRAM
.sysmem > SHAREDRAM
.text > SHAREDRAM
.switch > SHAREDRAM
.far > SHAREDRAM
}

  • Hello,

    You are defining a memory section "DSPRAM" in your linker.cmd file which overlaps with a memory section defined somewhere else. Looking at your build log, it looks like you have two linker cmd files "C6745.cmd" and "linker.cmd." That is probably where the overlap is occurring. You can either exclude one of them from your build, or go to project properties -> General -> Linker command file and remove it there.

    Regards,
    Sahin