Porting a linker script from STM32F1 to STM32F2
Most Chip "families" use a similar memory layout, so it might "just work" without changes.

There are only 2 interseting things in this script:

MEMORY
{
    sram (W!RX) : ORIGIN = 0x20000000, LENGTH = 64k
    flash (RX) : ORIGIN = 0x08000000, LENGTH = 512k
}


The MEMORY section needs to be checked agains datasheet/reference manual whether the addresses and sizes of the SRAM and FLASH are correct.

The other point is the stack end _estack, as it is hardcoded:

PROVIDE( _estack = 0x20010000 );

You might have noticed that this is the "end of SRAM", as 0x20000000 + 64k is exactly
0x20010000. You might need to change this accordingly.