请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:TMS320F2806 工具/软件:TI C/C++编译器
这是一个 C2000项目。 我已经在 C2000链接器/基本选项中指定了堆栈和堆段。 我在链接器命令行上看到--heap_size=0x200 --stack_size=0x200、这是准确的。 但是、在.map 文件中、我看不到对堆(即 .esysmem)的任何引用。
如果我在代码中添加对 malloc()的调用, .esysmem 会突然出现在.map 文件中,请求的大小为0x200。
我不使用 malloc(),但我使用 sprintf(),所以我确实需要一个堆。
在 这种情况下、.esysmem 为什么不会显示在.map 文件中?
也许它是.ebss 段的一部分?
在 这种情况下、它不会生成.esysmem 段似乎很奇怪...
谢谢你。