【发布时间】:2017-06-17 11:30:09
【问题描述】:
我注意到 AVR 的 gcc 落后于 gcc 的主要开发流程。例如,AVR8 的 gcc 在 Atmel Studio 7 和 Arduino 中为 4.9.2,而 AVR32 在 Atmel Studio 中为 4.4.7。同时,gcc 4.9.4 是当前的 4.9 版本,开发正在推动多个分支 5.x、6.x 和 7.x (https://gcc.gnu.org/develop.html)。
更新(2019 年 11 月): Atmel Studio 和 Arduino 工具链现在升级到 gcc 5.4,它仍然只完全实现了 C++11。
我担心的是,如果在较旧的编译器上使用最近添加的 C++ 语言功能,我可能会遇到早期实现问题。另外,gcc中AVR支持的开发过程还不清楚。
- 是否将 C++ 语言的新功能添加到 gcc + AVR 工具链中?
- 我可以将它们与 Atmel Studio 或 Arduino IDE 一起使用吗?
【问题讨论】:
-
我不明白这个问题。您是在问我们为什么一家公司会做出某些决定?或者 GCC 的开发是如何工作的?至于语言特性——它们的支持在 GCC 网站上有很好的记录。
-
因为 Atmel 需要时间来更新他们定制的 GCC。它编译到不同的平台,他们必须合并源。这需要很多时间。此外,由于主要是基于意见的答案,这个问题对于 StackOverflow 来说是题外话,最终将被关闭。
-
您可以获取最新的 avr-gcc 工具链作为 Arch Linux 包,或者自己编译:archlinux.org/packages/community/x86_64/avr-gcc
标签: c++ gcc avr atmelstudio