私はこのすべての(またはほとんどの) "cc"サポートは、* nixシステムで "ウォール"をサポートしていますか?
foo: foo.c
$(CC) -o foo -Wall foo.c
のようなMakefileで書きたいが、私はすべてのcc
実装が-Wall
をサポートしている場合はわかりません。
私はこのすべての(またはほとんどの) "cc"サポートは、* nixシステムで "ウォール"をサポートしていますか?
foo: foo.c
$(CC) -o foo -Wall foo.c
のようなMakefileで書きたいが、私はすべてのcc
実装が-Wall
をサポートしている場合はわかりません。
いいえ、ポータブルオプションのみを使用すると、POSIX C89とC99のオプションに制限することができます。 -Wall
はその1つではありません。オプションについては、Opengroup's Unix Specification for c99を参照してください。そしてそれは、マイクロソフトではなく、ユニックスなシステムにしか答えられません。
-Wall
が(私の知る限り)GNU gcc
によって導入されGNU gcc
と互換性を持つようにclang
によって継承しました。
他のビルドツールを調べることを恐れていない場合は、複数のOSまたはマルチツールチェーンのビルドをサポートするものがあります。私はscons
とcmake
がこれを行うことができると信じています。
いいえ、Cコンパイラのコマンドラインインターフェイスに関する標準はありません。
Microsoftコンパイラ(Windows版)では、通常はWindowsプログラムで使用される構文ではないため、-
で始まるオプションは一切受け付けていません。
メイクファイルには、gccに 'WARNINGS = -Wall'、MSVCに' WARNINGS =/bla'を定義する場所をサポートしたいそれぞれのコンパイラのセクションがあり、buildコマンドは ' $(CC)-o foo $(WARNINGS)foo.c' –