Loading...
 
Skip to main content

System Workbench for STM32


LwIP .bin application for the stm32f746 discovery board is too large

I have compiled the LwIP example using the stm32 eclipse workbench with debug info set to none, assert disabled, ---- spec = nano.specs as a linker option and the compiled binary is roughly 393 MB. Can someone please help?

Thanks

Hello,
Found same problem but eventually tracked it down.
Not sure if this is the correct fix but it works.

If you look into the linker script file for the project "STM32F746NGHx_FLASH.ld" you will see four memory locations mapped to the SRAM device.
At the bottom of the file these are used for the ethernet buffers (recently moved in latest release of librray), but they are missing the NOLOAD attribute so the linker is placing them into the BIN file and has to include all memory from the start ofFLASH at 0x08000000 to 0x20000000.

What the end section should look like is as follows:

.RxDecripSection (NOLOAD) : { *(.RxDescripSection) } >Memory_B1
.TxDescripSection (NOLOAD) : { *(.TxDescripSection) } >Memory_B2
.RxarraySection (NOLOAD) : { *(.RxBUF) } >Memory_B3
.TxarraySection (NOLOAD) : { *(.TxBUF) } >Memory_B4


This creates a nice 107KB BIN file.