Quality RTOS & Embedded Software

 Real time embedded FreeRTOS RSS feed 
Quick Start Supported MCUs PDF Books Trace Tools Ecosystem


Sam7X + heap_1

Posted by Nobody/Anonymous on January 11, 2007
I cant figure, why project compile successfully with heap_2.c but not whith heap_1.c. IAR give "Fatal Error[e72]: Segment HEAP must be defined in a segment definition option (-Z, -b or -P)". (Heap_1.c should be ok for IAR, it use compilers own malloc -function for memory allocation).

Linker Config should be correct. Error generate only when i compile project with heap_1.c.

Project is demo for SAM7X, compiler is IAR.

Can someone explane for me, why this is so?

RE: Sam7X + heap_1

Posted by Nobody/Anonymous on January 11, 2007
Do you mean heap_3? This is the one that uses malloc(), not heap_1.

Try compiling with heap_2 - the one you say works - then calling malloc form main() to see if it gives the same problem which I think it will.


RE: Sam7X + heap_1

Posted by Nobody/Anonymous on January 11, 2007
Thanks Dave, you are right:

1) I mean heap_3, not heap_1, sorry.

2) Again right! If i compile with heap_2 and use malloc() in other module, IAR give same error.

But still, I cant understund why its so. Is it illegal use malloc with IAR+ARM7 or whats the problem?

RE: Sam7X + heap_1

Posted by Nobody/Anonymous on January 11, 2007
When you link in malloc the linker will attempt to find the data segment called HEAP (or some other similar name). This section will be needed within the linker script. I should take a look at the IAR manual for the malloc function, or heap description.


[ Back to the top ]    [ About FreeRTOS ]    [ Privacy ]    [ Sitemap ]    [ ]

Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.

Latest News

Version 10.1.0 of the FreeRTOS kernel is available for immediate download. MIT licensed.

View a recording of the "OTA Update Security and Reliability" webinar, presented by TI and AWS.


FreeRTOS and other embedded software careers at AWS.

FreeRTOS Partners

ARM Connected RTOS partner for all ARM microcontroller cores

Espressif ESP32

IAR Partner

Microchip Premier RTOS Partner

RTOS partner of NXP for all NXP ARM microcontrollers


STMicro RTOS partner supporting ARM7, ARM Cortex-M3, ARM Cortex-M4 and ARM Cortex-M0

Texas Instruments MCU Developer Network RTOS partner for ARM and MSP430 microcontrollers

OpenRTOS and SafeRTOS

Xilinx Microblaze and Zynq partner