How do I resolve this Building issue with the following message - linking...
GFX01M1_HelloWorld\GFX01M1_HelloWorld.axf: error: L6047U: The size of this image (824520 bytes) exceeds the maximum allowed for this version of the linker
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
2022-05-26 7:14 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
2022-05-26 7:40 AM
- Get a version of the linker which supports images as large as 824520 bytes;
- Reduce the image size so that your current linker will allow it.
You haven't said what tools (Compiler, Linker, etc) you are using - but, at a guess, is it the free evaluation version of Keil?
BTW: Please don't put the entire question in the title.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
2022-05-26 7:43 AM
Thank for your answer. Yes I am using Keil.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
2022-05-26 7:44 AM
What STM32 MCU you use ?
it is possible that the STM32 Flash memory size is <= size of this image (824520 bytes).
for example, if using MB1360-G071RB (MB1360C) + GFX01M1 board, STM32G071RB only has up to 128kB flash, it can't contain the image.
To resolve it, you may use a smaller image, such as size about 100kB.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
2022-05-26 7:49 AM
I'm using STM32G071RB and its size flash memory is 128K
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
2022-05-26 7:55 AM
As mentioned, the easiest way is to use a small image with size <= 100kB.
If big image like 800kB size is mandatory, it can't be used directly, it should be put in external memory, and show part of it on GFX01M1 LCD at a time only, I suppose, by using SRAM buffer.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
2022-05-26 8:39 AM
@jiangfan "To resolve it, you may use a smaller image, such as size about 100kB"
But the message says it's exceeding the Linker's capability - not the memory size.
Thus I suspect that @SBort.1 is using the free evaluation version - which has a clearly-stated limit of 32K.
Therefore 100K would still be too big for this Linker.
To be able to use this linker, the image size would need to be reduced below 32K
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
2022-05-26 8:40 AM
see above: even 100K is still way too big for the free evaluation version of the Keil tools.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
2022-05-26 10:14 AM
Thanks for the help for now but I just want you to run the demo software from the ST website for the Touch Display application that writes "Hello Word". Memory size issue should not be problem as it describes for ST G071RB kit to apply to X-NUCLEO-GFX01M1
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
2022-05-26 10:47 AM
As it's a STM32 Cortex-M0(+) the free specially licensed version should be viable
https://www2.keil.com/stmicroelectronics-stm32/mdk
I don't recall it having the 32KB limit (might have a limit), and it does support address independent code, and link time optimization, which the EVAL version doesn't
Up vote any posts that you find helpful, it shows what's working..
