1

簡単に言えば、Arduino 用の V-USBのポートをダウンロードしましたが、付属のサンプルをコンパイルできないようです。Arduino IDE 1.0.1 を使用してコンパイルしようとすると、次のメッセージが表示されます。

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

これはバージョンの非互換性の問題である可能性が高く、avr-gcc を古いバージョンにダウングレードすることで回避できることは理解していますが、最新バージョンの avr-gcc を使用してコンパイルするようにトリックを行うことは可能ですか?

私がこれを試している環境についてのちょっとしたメモ

  • OS : Fedora リリース 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

Jesterからのヒントを参考に、IDE をバージョン1.0.3に更新することでこの問題を解決することができました(1.0.2 も同様に機能する可能性があります)。

したがって、問題はコードやコンパイラではなく、IDE 1.0.1が古いバージョンのavr-gccを予期していて、コンパイルに非推奨のフラグを使用していたため、そのフラグが使用できなくなったため、単純に失敗したことでした。そのため、コンパイラをダウングレードするか、IDE をアップグレードする必要があります。私の観点からは、アップグレードは常に正しい選択です。

于 2012-12-27T03:18:52.107 に答える
1

この-assembler-with-cppオプションは、後続のすべてのファイルを前処理が必要なアセンブラー ファイルと見なすようにコンパイラーに指示します。v-usb を一目見ただけで、ファイル.asmのラッパーが提供され.Sます。これらを使用する必要はなく、コンパイラは.Sオプションなしでファイルを自動的に認識します。

.asm上記のラッパーに問題がない場合は、問題のファイルの名前を.S.

フラグなしでコンパイルしてみましたか? どうしたの?

于 2012-12-24T14:47:25.403 に答える