打印

请教一个关于编译器的问题

[复制链接]
4199|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
王培1|  楼主 | 2009-7-27 13:24 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
小生用SH4做个 DD,今天+了点代码,编译后提示我
“Link Error   : L1102: Out of allocation space in segment RAM at address 0x143


Link Error   : Link failed


后来我 改为SH8,再编译,通过了,我 查看map文件,发现
MODULE STATISTIC
  Name                                      Data   Code  Const
---------------------------------------------------------------------------------------------
  main.c.o                                     6    196      0
  RTSHC08.C.o (ansiis.lib)                     0     58      0
  Start08.c.o                                  0    132      0
  ReadDirectlyDriver.c.o                      44   1631     64
  Uart.c.o                                    17    187      0
  Misc.c.o                                     0     43      2
  MC9S08SH8.C.o                              108      0      0
  other                                       80     16      2
我自己的 代码
main.c.o                                     6    196      0
ReadDirectlyDriver.c.o                      44   1631     64
Uart.c.o                                    17    187      0
Misc.c.o                                     0     43      2
算了一下也就 6+44+17 = 67个,其它的估计都被编译器给其他分配掉了,难道
SH4里面256字节RAM就只有这几个可以用?
other                                       80     16      2
这个80是堆栈用内存

相关帖子

沙发
王培1|  楼主 | 2009-7-28 09:29 | 只看该作者

暂时的 解决办法

现在看来SH4用户可以用的RAM其实不多的,也就256-80(堆栈),我现在的做法是在PRM文件里把堆栈用的 RAM改小。不知道其他高手有没有其它的 办法

使用特权

评论回复
板凳
bg7jzw| | 2009-7-30 19:31 | 只看该作者

不知道你用什么编译器

不知道你用什么编译器

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

37

主题

142

帖子

0

粉丝