编译提示内存不足怎么回事

2019-03-24 11:31发布

本帖最后由 夏侯 于 2014-5-20 08:43 编辑

"./lnk.cmd", line 48: error #10099-D: program will not fit into available
    memory.  placement with alignment fails for section ".text" size 0x2b12 .
    Available memory ranges:
    FLASH        size: 0x1000       unused: 0xe56        max hole: 0xe56   

CMD文件: .text            : > PRAML0,    PAGE = 0


后记:问题解决了,RAM中空间不够,可以在FLASH中运行,用Release模式,具体参见“C2000在FLASH中运行”的帖子,希望初学者别走我这菜鸟的路。。。

此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
13条回答
dontium
1楼-- · 2019-03-24 20:15
楼主把2b12 .的代码,放到 0x1000   的空间里,当然是不行的。

可以组织一下CMD文件,方法是,打开MAP文件,看看哪一段占多少空间,把它们调整一下就好了。

也或者,将CMD文件中的FLASH分的小块块化为一个大块。

关于CMD文件这方面的知识,可以参阅TI的《TMS320C28x Assembly Language Tools v6.1 User's Guide》
qinkaiabc
2楼-- · 2019-03-24 22:23
 精彩回答 2  元偷偷看……
qinkaiabc
3楼-- · 2019-03-25 01:49
捕获.PNG


还可以改CMD文件
chunyang
4楼-- · 2019-03-25 04:24
说明你程序中使用的内存超出了芯片的资源限制。可以先进行优化编译试试,但本质的办法是认为严格管理内存的使用,特别是尽量减少不必要的全局变量。
dontium
5楼-- · 2019-03-25 06:32
 精彩回答 2  元偷偷看……
夏侯
6楼-- · 2019-03-25 07:04
qinkaiabc 发表于 2014-5-18 21:32
还可以改CMD文件

已经设置了编译优化,可还是存在这个错误

一周热门 更多>

相关问题

    相关文章