2012-04-10 67 views
3

根据关于arduino环境是否支持例外的answer to a question,理论上可以在Arduino板上运行“例外”二进制文件。在Arduino环境中启用例外

我该如何改变我的Arduino IDE来允许这个?具体而言,如何在调用编译器时防止IDE包含-fno-exceptions标志?

+0

实用书架[Advanced Arduino Hacking] [1]文章指出 “......它不支持异常,因为它们的运行时间开销太大。” 因此,启用它们可能不是一个好主意。 [1]:https://pragprog.com/magazines/2011-04/advanced-arduino-hacking – 2015-01-11 16:45:45

回答

3

Arduino IDE将-fno-exceptions传递给它使用的编译器(avr-gcc)。它这样做是因为编译器的文档指定了它是必需的(请参阅http://www.nongnu.org/avr-libc/user-manual/FAQ.html#faq_cplusplus)。

由于此参数对于编译器的正常运行是必需的(正确或错误),因此Arduino IDE不提供改变此方法的方法。不过,如果你想尝试删除这个参数,看看你需要编辑Arduino源代码(目前在https://github.com/arduino/Arduino/blob/master/app/src/processing/app/debug/Compiler.java中的589行),并自己重新编译IDE。

+7

或者更简单的移动编译器avr-gcc,并用间接调用编译器之前过滤标志的脚本替换它。 – 2012-04-10 22:06:10

相关问题