Hi,
When I am building my application I get the following error:
Error: L6406E: No space in execution regions with .ANY selector matching ke_task.obj(.text).
but many times for different objects. I am using the limited (free) version of Keil for Arm cortex devices (I am using a Dialog chip with Arm Cortex M0)
I am not sure if I have simple just gone over the 32kB limit for the free version of Keil, or I have genuinly gone over my memory limit.
Can anyone help with this? If I go over the free 32kB limit, should it explicitly tell me? Or is this the error I will get
The linker and debugger have their own messages for the 32KB limit.
Your error is more indicative that you target's resources have been exhausted, you'd want to check the Target options, and look at how big the IROM section is. You could make this bigger, and see how large it need to be to compile/link. The linker should output the total sizes when done, and this information will also exist in the .MAP file the linker creates. Perhaps the code you're building is simply too large for the part you're trying to stuff into it?
Thanks for your reply.
The chip I use does not have any FLASH, so the code + data is loaded into RAM from an external memory or via the SWD - so in total I have around 50KB
Also, I use a scatter file which I believe overrides what is in the target option anyway.
So the map doesn't really tell me anything useful, but the build output I see now tells me: Error: L6407E: Sections of aggregate size 0xf6c bytes could not fit into .ANY selector(s). For some reason I didn't see this line before
So I guess there is my answer, I need to free up somehow around 4kB! T