TI论坛
直播中

李子邯

7年用户 177经验值
私信 关注
[问答]

stack_size冲突和重定义问题?

本帖最后由 一只耳朵怪 于 2018-6-25 14:43 编辑

朋友们,我今天遇见了一个问题,希望大侠们能指点一二
开发环境:CCS3.3.82+xds560plus;芯片使用OMAPL138,目前只使用C6748单核,采用BIOS系统;采用CCS开发,完全不牵涉ARM部分;
BIOS系统版本:bios_5.41.02.14,编译器V6.1.11,build顺利通过,linking过程程序报错如下:
--------------------------------------------------------------------------------------------------------------------------------------------------------------
[Linking...] "C:Program FilesTexas InstrumentsC6000 Code Generation Tools 6.1.11bincl6x" -@"Debug.lkf"

error: symbol "__stack" redefined: first defined in "C:/Program Files/Texas
   Instruments/C6000 Code Generation Tools 6.1.11/lib/rts67plus.lib";
   redefined in
   "C:/CCStudio_v3.3/bios_5_41_02_14/packages/ti/bios/lib/bios.a674"
error: symbol "_c_int00" redefined: first defined in "C:/Program Files/Texas
   Instruments/C6000 Code Generation Tools 6.1.11/lib/rts67plus.lib";
   redefined in
   "C:/CCStudio_v3.3/bios_5_41_02_14/packages/ti/bios/lib/bios.a674"
undefined    first referenced                                                                                 
  symbol          in file                                                                                      
---------    ----------------                                                                                 
__STACK_SIZE C:/Program Files/Texas Instruments/C6000 Code Generation Tools 6.1.11/lib/rts67plus.lib
error: unresolved symbols remain
error: errors encountered during linking; "./Debug/138_dm9000RJ45.out" not
   built
>> Compilation failure
Build Complete,
  1 Errors, 11 Warnings, 0 Remarks.
-------------------------------------------------------------------------------------------------------------------------------------------------------------
在dsplinker.cmd文件中的stack定义如下:—stack  0x00000800
在BIOS的TCF文件中对stack size定义 0x0400
以上部分如信息不够,还请指出。折腾了三天木有结果,诚盼指点,谢谢!

回帖(9)

高川

2018-6-25 04:23:12
stack size重复定义了。把在dsplinker.cmd文件中的stack定义删掉,在BIOS的TCF文件中准确配置需要的size,再试试。
举报

李子邯

2018-6-25 04:29:02
引用: hkhwdz 发表于 2018-6-25 04:23
stack size重复定义了。把在dsplinker.cmd文件中的stack定义删掉,在BIOS的TCF文件中准确配置需要的size,再试试。

你好,我删掉了dsplinker.cmd文件中的stack文件定义,在TCF中配置size为0x0800,编译之后报错依然。
举报

高川

2018-6-25 04:43:15
引用: dsfsfsfs3 发表于 2018-6-25 04:29
你好,我删掉了dsplinker.cmd文件中的stack文件定义,在TCF中配置size为0x0800,编译之后报错依然。

抱歉刚才没看仔细,我看你的出错信息是说rts67plus.lib和bios的重复定义了_c_int00和stack size。我觉得很奇怪因为按我的理解rts的库一般是不会包含c_int00或者stack size的信息的。感觉这个库有问题?你能不能再试试把这个rts的库去掉?
举报

李波

2018-6-25 04:57:37
把cmd文件里的定义去掉。
另外,BIOS的配置为C674x的,为什么RTS库是rts67plus.lib,是不是在什么地方手动添加了rts67plus.lib,对于现在编译器,尤其是用了BIOS的工程,不需要手动添加rts库的,CCS会根据配置自动为工程选择相应的rts库。
                                                                         http://processors.wiki.ti.com/index.php/Main_Page
Think Over Before Asking.
http://www.catb.org/~esr/faqs/smart-questions.html#goal
举报

更多回帖

发帖
×
20
完善资料,
赚取积分