Closed Auravendill closed 3 years ago
`rom' overflowed by 4476 bytes
This Issue Queue is for Marlin bug reports and development-related issues, and we prefer not to handle user-support questions here. (As noted on this page.) For best results getting help with configuration and troubleshooting, please use the following resources:
After seeking help from the community, if the consensus points to a bug in Marlin, then you should post a bug report.
But something in Marlin changed and now I cannot build for this one mainboard anymore. Neither with my own config files nor with the example files that are linked within Marlin itself. Reading documentations (again) on how to config marlin won't change that. I am usually more than capable to get my configs to work, my other printer all run just fine with 2.0.7.2, but with different mainboards.
On the printer in question is currently running Marlin 2.0.6.1. So it was obviously possible to compile for it back then.
In "Check All" it says: Marlin/src/pins/pins.h:747: [high:error] #error Unknown MOTHERBOARD value set in Configuration.h [preprocessorErrorDirective] even though the mainboard is defined in boards.h (Not sure if that means anything though)
I can of course ask on Discord too, but I rather doubt, that they will find the issue... But I wouldn't mind getting proven wrong.
".rodata' will not fit in region rom'"
The firmware you have created is to large for the amount of flash on your controllers. Disable some features.
also use bugfix for this board or wait to next release. They use ststm32@~10.0 the produces much smaller code.
But if compile with STM32F103RC_btt_512K_USB (which works (but might be unstable etc or will just crash)), it says, I am using 46,1% flash (241948 bytes), which means I should still be safe with only the 256k I normally have with the option I used before.
And the example config already uses less features than I am currently using in 2.0.6.1 and apparently doesn't fit anymore? Did 2.0.7.2 get so much worse in terms of space efficiency or are new features enabled in the background that I haven't noticed yet?
But if those issues will be fixed in the next release, I will be looking forward to it. If my board crashes with the 512K version, I might consider trying bugfix, but I prefer to use a stable branch as much as possible.
Thank you very much for your help!
This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.
I cannot compile the current Marlin 2.0.x branch for my SKR mini E3-DIP V1.1. I've tried on both Windows and Linux and switched back to the example config from Configurations-release-2.0.7.2 for this board in an Ender 3 to minimize all error sources as far as I can. Compiling for other boards like the SKR v1.3 works totally fine.
This is the output in Platformio (VS Code, Debian 10):
Processing STM32F103RC_btt_USB (platform: ststm32@~6.1; board: genericSTM32F103RC; framework: arduino)
Verbose mode can be enabled via
-v, --verbose
option CONFIGURATION: https://docs.platformio.org/page/boards/ststm32/genericSTM32F103RC.html PLATFORM: ST STM32 (6.1.1) > STM32F103RC (48k RAM. 256k Flash) HARDWARE: STM32F103RCT6 72MHz, 48KB RAM, 256KB Flash DEBUG: Current (blackmagic) External (blackmagic, jlink, stlink) PACKAGES:~~~~~ Compiling .pio/build/STM32F103RC_btt_USB/lib46a/EEPROM/flash_stm32.c.o Archiving .pio/build/STM32F103RC_btt_USB/libd7b/libU8glib-HAL.a Archiving .pio/build/STM32F103RC_btt_USB/libbb7/libSTM32ADC.a Indexing .pio/build/STM32F103RC_btt_USB/libbb7/libSTM32ADC.a Compiling .pio/build/STM32F103RC_btt_USB/libc9e/FreeRTOS701/MapleFreeRTOS.cpp.o Compiling .pio/build/STM32F103RC_btt_USB/libc9e/FreeRTOS701/utility/croutine.c.o Indexing .pio/build/STM32F103RC_btt_USB/libd7b/libU8glib-HAL.a Archiving .pio/build/STM32F103RC_btt_USB/lib46a/libEEPROM.a Indexing .pio/build/STM32F103RC_btt_USB/lib46a/libEEPROM.a Compiling .pio/build/STM32F103RC_btt_USB/libc9e/FreeRTOS701/utility/heap_2.c.o Compiling .pio/build/STM32F103RC_btt_USB/libc9e/FreeRTOS701/utility/list.c.o Compiling .pio/build/STM32F103RC_btt_USB/libc9e/FreeRTOS701/utility/port.c.o Compiling .pio/build/STM32F103RC_btt_USB/libc9e/FreeRTOS701/utility/queue.c.o /home/daniel/.platformio/packages/framework-arduinoststm32-maple@2.10000.200103/STM32F1/libraries/FreeRTOS701/utility/port.c: In function 'xPortStartScheduler': /home/daniel/.platformio/packages/framework-arduinoststm32-maple@2.10000.200103/STM32F1/libraries/FreeRTOS701/utility/port.c:178:2: warning: implicit declaration of function 'systick_attach_callback' [-Wimplicit-function-declaration] systick_attach_callback(&xPortSysTickHandler); ^~~~~~~ At top level: /home/daniel/.platformio/packages/framework-arduinoststm32-maple@2.10000.200103/STM32F1/libraries/FreeRTOS701/utility/port.c:285:6: warning: 'prvSetupTimerInterrupt' defined but not used [-Wunused-function] void prvSetupTimerInterrupt( void ) ^~~~~~ Compiling .pio/build/STM32F103RC_btt_USB/libc9e/FreeRTOS701/utility/tasks.c.o Compiling .pio/build/STM32F103RC_btt_USB/libc9e/FreeRTOS701/utility/timers.c.o Compiling .pio/build/STM32F103RC_btt_USB/lib393/Servo/Servo.cpp.o Archiving .pio/build/STM32F103RC_btt_USB/lib393/libServo.a Indexing .pio/build/STM32F103RC_btt_USB/lib393/libServo.a Archiving .pio/build/STM32F103RC_btt_USB/libc9e/libFreeRTOS701.a Indexing .pio/build/STM32F103RC_btt_USB/libc9e/libFreeRTOS701.a Linking .pio/build/STM32F103RC_btt_USB/firmware.elf /home/daniel/.platformio/packages/toolchain-gccarmnoneeabi/bin/../lib/gcc/arm-none-eabi/7.2.1/../../../../arm-none-eabi/bin/ld: .pio/build/STM32F103RC_btt_USB/firmware.elf section.rodata' will not fit in region
rom' /home/daniel/.platformio/packages/toolchain-gccarmnoneeabi/bin/../lib/gcc/arm-none-eabi/7.2.1/../../../../arm-none-eabi/bin/ld: region `rom' overflowed by 4476 bytes collect2: error: ld returned 1 exit status *** [.pio/build/STM32F103RC_btt_USB/firmware.elf] Error 1 ============================================================ [FAILED] Took 97.79 seconds ============================================================Environment Status Duration
STM32F103RC_btt_USB FAILED 00:01:37.791 ======================================================= 1 failed, 0 succeeded in 00:01:37.791 ======================================================= Der Terminalprozess "pio 'run'" wurde mit folgendem Exitcode beendet: 1.
Das Terminal wird von Aufgaben wiederverwendet, drücken Sie zum Schließen eine beliebige Taste.