I have found the example projects very convenient, thanks for them.
Just wish to warn that the projects use a linker script (stm32_flash.ld) that carries a notice that it is part of some ide and that the file is not distributable
Strange that ST included that in their distribution...
If you want, you can use this linker script which is based on one of our earlier stm32f1xx linker scripts:
I used your stm32f4xx_flash.ld script as a drop in replacement for stm32_flash.ld. This worked, thanks.
Nevertheless there are some differences between the files:
RAM length 128K vs. 112K,
what is eh_frame* in stm32_flash.ld?
I'll keep on using it for my next experiments and keep you informed.
That linker script "stm32f4xx_flash.ld" actually can be found in the peripheral lib, shipped by ST for RIDE, at the following path: STM32F4xx_DSP_StdPeriph_Lib_V1.0.0/Project/STM32F4xx_StdPeriph_Templates/RIDE/stm32f4xx_flash.ld
I have no clue why the atollic version only refers to 112K..
As far as .eh_frame, it's for unwinding call frames when handling an exception. I'm sure exactly when GCC needs/generates it, but I don't believe that it's used within ARM EABI. This provides some generic information on it:
None of my other linker scripts for various ARM embedded targets has it, so I don't think I've needed it for my cross section of language and debugging use.
Some more relevant details on eh_frame/gcc:
I've also removed the atollic linker scripts for the 32l_dac and 32l_lcd examples....