cancel
Showing results for 
Search instead for 
Did you mean: 

Hello. I modified the .ld file with the aim to include another .ld file using INCLUDE "..\Mem_aux\MEM_0.ld", but at the beginning it's works, but when I modified the second file the changes didn't modify the memory layout.

RExpo.1
Associate

There are any way to each time that I build the project, the changes made at the second linker script will be done? The main linker script is STM32F746ZGTX_FLASH.ld, and the other is called MEM_0.ld, and it's in another folder inside the project.

Thanks in advance!

3 REPLIES 3
SBEN .2
Senior II

Hello @RExpo.1​ ,

Could you provide you linker files, or at least the minimum files, that reproduce this issue? And which is the toolchain version you are working with here?

Best regards,

@SBEN .2​ 

RExpo.1
Associate

Hello SBEN, Finally I delated the files due it didn't work as I want. But the main linker script was provided for the STM32CubeIDE, and the other was a copy of it but with another MEMORY region, and another section within this region. It' didnt overlap, and when I used the simbols where created, but when I made a change It didn't shown in the build analyzer. I think that it was due I used the INCLUDE command. I tried another way to do it by means of the settings configuration of the Cube IDE. Inside Propieties/Settings/MCU GCC Linker/Miscelanous I aded a new object file "${workspace_loc:/${ProjName}/MEM_AUX_2.ld}", then each time I change the .ld file the build analyze change the regios, sections an simbols. It solve the initial problem, but apeared a waringn [contains output sections; did you forget -T?]. The programs works but the warning didn't disapear.

Pavel A.
Evangelist III

Force re-link or do full rebuild. The Eclipse builder does not track changes in your ld include file.