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.

c6748编译报错,怎么回事?

Other Parts Discussed in Thread: TMS320C6748, SYSBIOS

内存放不下,把rts6740_elf.lib库剪切到工程目录下指向片外,编译报错。

error #10056: symbol "free" redefined: first defined in

"F:rm_20p20180727workspace_c6746sysbios_general_prjDebugconfigPkgpackagecfgapp_pe674.oe674"; redefined in "..codelib

rts6740_elf.lib<memory.obj>"

error #10056: symbol "realloc" redefined: first defined in "F:rm_20p20180727workspace_c6746sysbios_general_prjDebugconfigPkgpackagecfgapp_pe674.oe674"; redefined in "..codelib
rts6740_elf.lib<memory.obj>"
error #10056: symbol "memalign" redefined: first defined in "F:rm_20p20180727workspace_c6746sysbios_general_prjDebugconfigPkgpackagecfgapp_pe674.oe674"; redefined in "..codelib
rts6740_elf.lib<memory.obj>"
error #10056: symbol "calloc" redefined: first defined in "F:rm_20p20180727workspace_c6746sysbios_general_prjDebugconfigPkgpackagecfgapp_pe674.oe674"; redefined in "..codelib
rts6740_elf.lib<memory.obj>"
error #10056: symbol "malloc" redefined: first defined in "F:rm_20p20180727workspace_c6746sysbios_general_prjDebugconfigPkgpackagecfgapp_pe674.oe674"; redefined in "..codelib
rts6740_elf.lib<memory.obj>"

怎么解决或者怎么把这个库指向片外:C:\ti\ti-cgt-c6000_8.2.2\lib\rts6740_elf.lib????急急急

  • 从报错信息看这些symbol重复定义了。在cmd文件里可以把库放到片外。
  • 怎么放到片外?路径怎么设置?具体要怎么实现?

  • SECTIONS
    {
    .workcodeddr: {}> DDR
    {
    rts6740_elf.lib<
    exit.obj
    memset.obj
    >(.text)
    }
    }

    "D:\tms320c6748\workspace_c6748\t\Debug\configPkg\package\cfg\app_pe674.oe674"; redefined in "C:/ti/ti-cgt-c6000_8.2.2/lib/rts6740_elf.lib<memory.obj>"
    error #10056: symbol "memalign" redefined: first defined in "D:\tms320c6748\workspace_c6748\t\Debug\configPkg\package\cfg\app_pe674.oe674"; redefined in "C:/ti/ti-cgt-c6000_8.2.2/lib/rts6740_elf.lib<memory.obj>"
    error #10056: symbol "calloc" redefined: first defined in "D:\tms320c6748\workspace_c6748\t\Debug\configPkg\package\cfg\app_pe674.oe674"; redefined in "C:/ti/ti-cgt-c6000_8.2.2/lib/rts6740_elf.lib<memory.obj>"
    error #10056: symbol "malloc" redefined: first defined in "D:\tms320c6748\workspace_c6748\t\Debug\configPkg\package\cfg\app_pe674.oe674"; redefined in "C:/ti/ti-cgt-c6000_8.2.2/lib/rts6740_elf.lib<memory.obj>"
    error #10010: errors encountered during linking; "t.out" not built

    现在只要把这个库的obj移到片外就报错,怎么回事?

  • 这个库app_pe674.oe674是您自己写的?app_pe674.oe674和rts6740_elf.lib两个库里重复定义这些symbol,需要在其中的一个库里去掉相应的定义。
  • 不是我写的,是sysbios编译自动生成的,不知道为啥会生成这个库?