Hi,
This is a review of CC/C++ for AVR.
Debian Buster:
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-==============-======================-============-===================================
ii avr-libc 1:2.0.0+Atmel3.6.1-2 all Standard C library for
Atmel AVR de
ii avrdude 6.3-20171130+svn1429-2 amd64 software for programming
Atmel AVR
ii gcc 4:8.3.0-1 amd64 GNU C compiler
ii gcc-avr 1:5.4.0+Atmel3.6.1-2 amd64 GNU C compiler (cross
compiler for
ii gdb-avr 7.7-4+b12 amd64 GNU Debugger for avr
Choice of CC/C++ for AVR can be several choices. As I googled situation, it
looks
like:
(1) Hard ware vendor (microchip) supported CC:
GCC 5.4.0 based gcc-avr (current state in Debian)
Yah... it's old compared to the normal GCC 8.3 on buster
The vendor seems to have no intent to move to newer GCC.
(2) Latest GCC used as the cross-compiler:
Grntoo promote this: https://wiki.gentoo.org/wiki/Arduino
But it doesn't look good in near future ....
https://gcc.gnu.org/ml/gcc-patches/2019-09/msg01256.html
https://www.reddit.com/r/linux/comments/e3flt6/bountysource_campaign_to_modernize_the_avr/
https://www.avrfreaks.net/forum/avr-gcc-and-avr-g-are-deprecated-now
GCC 10: AVR is deprecated
GCC 11: AVR will be dropped
So moving to the latest GCC is not easy to do.
(3) Forward port vendor patches by someone
GCC 9.2 ??? by Archlinux
https://www.archlinux.org/packages/community/x86_64/avr-gcc/
GCC 9.1 by stevenj
https://github.com/stevenj/avr-gcc-build-script/releases/tag/20190728
https://www.avrfreaks.net/forum/avr-gcc-91-avr-libc-xmega3-device-support
Following such efforts seems fragile at best ... we don't even know
how well they are tested.
(4) Stable updated GCC with forward ported vendor patches supported by
the active user community --- Arduino
Arduino 1.8.10 (Larest release)
avr-gcc-7.3.0
Considering gcc-avr is mostly aimed for use with Arduino platform and
Arduino forks seem to maintain and test GCC well, switching the UPSTREAM
of this Debian package to the Arduino ine seems good idea.
Arduino seems to just download binary from:
http://downloads.arduino.cc/tools/avr-gcc-7.3.0-atmel3.6.1-arduino5-x86_64-apple-darwin14.tar.bz2
So we need to find where is the source of above package.
Osamu