2024-10-06 12:00 AM
Hi everybody,
I found a bug in STMCubeMX in the way it generates .ld scripts.
Context:
Problem:
The STM32F446RE Tx_FLUSH.ld file generated by STMCubeMX contains several errors that do not allow a link to be made correctly using Makefile.
Here are the difference :
Notice:
They are both stored in the attached zip.
diff -rup ./STM32F446RETx_FLASH.ld.CubeMx ./STM32F446RETx_FLASH.ld
--- ./STM32F446RETx_FLASH.ld.CubeMx 2024-10-06 08:43:28.775227144 +0200
+++ ./STM32F446RETx_FLASH.ld 2024-10-06 08:43:23.579187576 +0200
@@ -53,7 +53,7 @@
ENTRY(Reset_Handler)
/* Highest address of the user mode stack */
-_estack = ORIGIN() + LENGTH(); /* end of RAM */
+_estack = ORIGIN(RAM) + LENGTH(RAM); /* end of RAM */
/* Generate a link error if heap and stack don't fit into RAM */
_Min_Heap_Size = 0x600; /* required amount of heap */
_Min_Stack_Size = 0x400; /* required amount of stack */
@@ -143,7 +143,7 @@ SECTIONS
. = ALIGN(4);
_edata = .; /* define a global symbol at data end */
- } > AT> FLASH
+ } >RAM AT> FLASH
/* Uninitialized data section */
@@ -160,7 +160,7 @@ SECTIONS
. = ALIGN(4);
_ebss = .; /* define a global symbol at bss end */
__bss_end__ = _ebss;
- } >
+ } >RAM
/* User_heap_stack section, used to check that there is enough RAM left */
._user_heap_stack :
@@ -171,7 +171,7 @@ SECTIONS
. = . + _Min_Heap_Size;
. = . + _Min_Stack_Size;
. = ALIGN(8);
- } >
+ } >RAM
2024-10-06 01:59 AM
Bonjour @Sylex et bienvenue sur la communauté de ST :smiling_face_with_smiling_eyes:.
I think that this is a known regression that i have escalated for correction on the comming releases. Take a look at this post for more details.
Best Regards.
STTwo-32
To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.
2024-10-06 10:39 AM
So, if I well understand, I must regress CubeMX to version 6.12.0 !
Why ST is pushing release without serious test? Does STM consider us (the developers) to be the beta testers?