Hi,
I just upgraded the SEGGER RTT source files from V4.98e to the new V5.41b for a nRF51DK project using gcc/Makefile. When linking the (now quite large) program, I got the error messages:
c:/program files (x86)/gnu tools arm embedded/4.9 2015q1/bin/../lib/gcc/arm-none-eabi/4.9.3/../../../../arm-none-eabi/bin/ld.exe: _build/nrf51422_xxac_s130.out section `.bss' will not fit in region `RAM'
c:/program files (x86)/gnu tools arm embedded/4.9 2015q1/bin/../lib/gcc/arm-none-eabi/4.9.3/../../../../arm-none-eabi/bin/ld.exe: region RAM overflowed with stack
c:/program files (x86)/gnu tools arm embedded/4.9 2015q1/bin/../lib/gcc/arm-none-eabi/4.9.3/../../../../arm-none-eabi/bin/ld.exe: region `RAM' overflowed by 6872 bytes
e
I have read several posts regarding "region RAM overflowed with stack" issues. They seem to resolve to either 1) reduce the size of the heap, or 2) remove Segger's printf().
What strikes me here is that the new RTT increases the stack with over 6872 bytes by just upgrading the RTT! This looks strange to me. Q1: Do you have any comments to that?
Q2: Do you have any other ideas for getting the RAM size 7k smaller?
Q3: Are there other Eclipse/gcc tools to analyze the size of RAM? I have looked at the .map file for compiling before the change, but the overwhelmingly large file did not give me much help.
regards,
Elm