1

简单地说,我为 Arduino 下载了一个V-USB端口,似乎无法编译随附的示例。尝试使用 Arduino IDE 1.0.1 进行编译时收到以下消息

avr-gcc: error: unrecognized command line option '-assembler-with-cpp'

我知道这很可能是版本不兼容问题,可以通过将我的 avr-gcc 降级到旧版本来避免,但是是否可以使用最新版本的 avr-gcc 进行编译?

关于我正在尝试的环境的一些注意事项

  • 操作系统:Fedora release 17 (Beefy Miracle)
  • avr-gcc : (Fedora 4.7.2-1.fc17) 4.7.2
  • Arduino IDE:(arduino-1.0.1-1.fc17)1.0.1
4

2 回答 2

1

-assembler-with-cpp选项指示编译器将所有以下文件视为需要预处理的汇编文件。快速浏览一下 v-usb,它们为文件提供.asm了包装器。.S您不需要使用这些,编译器将.S自动识别文件而无需任何选项。

如果问题不在于.asm上面详述的包装器,您可以将有问题的文件重命名为.S.

您是否尝试过在没有标志的情况下进行编译?发生了什么?

于 2012-12-24T14:47:25.403 回答
1

Jester的提示下,我设法通过将 IDE 更新到1.0.3版(1.0.2 版也可以)解决了这个问题,它就像一个魅力。

所以我猜问题不在于代码或编译器,问题在于 IDE 1.0.1期待旧版本的avr-gcc并使用不推荐使用的标志进行编译,但由于该标志不再可用新的编译器,因此您要么必须降级编译器,要么升级 IDE,从我的角度来看,升级始终是正确的选择。

于 2012-12-27T03:18:52.107 回答