Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

The avr-size.exe is not suit for avr mcu #3

Closed
wanggaoteng opened this issue Jan 22, 2023 · 3 comments
Closed

The avr-size.exe is not suit for avr mcu #3

wanggaoteng opened this issue Jan 22, 2023 · 3 comments

Comments

@wanggaoteng
Copy link

I download the .zip file below:
image
and unzip it, the path of avr-size.exe is:
avr-gcc-12.1.0-x64-windows\bin
look at the help of avr-size.exe:
image
It lacks the --mcu and --mlist-devices as the following picture shows:
image

@ZakKemble
Copy link
Owner

ZakKemble commented Jan 22, 2023

avr-size does not need to know the MCU to show you the memory usage (omit the --mcu arg). If you want to get the usage as a percentage then the new correct way is to use avr-objdump with the -Pmem-usage argument: avr-objdump -Pmem-usage myproject.elf which will output something like:

myproject.elf:     file format elf32-avr
AVR Memory Usage
----------------
Device: attiny402

Program:    1934 bytes (47.2% Full)
(.text + .data + .bootloader)

Data:         16 bytes (6.2% Full)
(.data + .bss + .noinit)

This is because the MCU and available memory sizes are now embedded into the .elf file. See here - https://web.archive.org/web/20211026214736/https://www.avrfreaks.net/forum/where-does-avr-size-get-data-supported-devices

@wanggaoteng
Copy link
Author

avr-size does not need to know the MCU to show you the memory usage (omit the --mcu arg). If you want to get the usage as a percentage then the new correct way is to use avr-objdump with the -Pmem-usage argument: avr-objdump -Pmem-usage myproject.elf which will output something like:

myproject.elf:     file format elf32-avr
AVR Memory Usage
----------------
Device: attiny402

Program:    1934 bytes (47.2% Full)
(.text + .data + .bootloader)

Data:         16 bytes (6.2% Full)
(.data + .bss + .noinit)

This is because the MCU and available memory sizes are now embedded into the .elf file. See here - https://web.archive.org/web/20211026214736/https://www.avrfreaks.net/forum/where-does-avr-size-get-data-supported-devices

I see, thank you for reply.
Best regards.

@atoomnetmarc
Copy link

Thanks!

I used your help to write a post-build event for Microchip Studio to get Memory Usage back: $(ToolchainDir)/avr-objdump -Pmem-usage "$(OutputDirectory)/$(OutputFileName)$(OutputFileExtension)"

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants