-V オプションを指定すると、CC によって起動された各プログラムの名前とバージョン番号が表示されます。-v オプションを指定すると、CC によって起動されたコマンド行全体が表示されます。
—verbose=%all を指定すると、コンパイラに関する追加情報が表示されます。
コマンド行に指定された引数をコンパイラが認識できない場合には、それらはリンカーオプション、オブジェクトプログラムファイル名、ライブラリ名のいずれかとみなされます。
基本的には次のように区別されます。
認識できない非オプション (先頭にダッシュかプラス符号 (+) が付いていないもの)には、警告が生成されません。ただし、リンカーへの引き渡しは行われます。リンカーが認識しない場合、リンカーからエラーメッセージが生成されます。
次の例で、-bit は CC によって認識されないため、リンカー (ld) に渡されます。リンカーはこれを解釈しようとします。単一文字の ld オプションは連続して指定できるので、リンカーは -bit を -b、-i、-t とみなします。これらはすべて有効な ld オプションです。しかし、これは本来の意図とは異なります。
example% CC -bit move.cc < - -bit is not a recognized CC option CC: Warning: Option -bit passed to ld, if ld is invoked, ignored otherwise |
次の例では、CC オプション -fast を指定しようとしましたが、先頭のダッシュ (-) を入力しませんでした。コンパイラはこの引数もリンカーに渡します。リンカーはこれをファイル名とみなします。
example% CC fast move.cc < - The user meant to type -fast move.CC: ld: fatal: file fast: cannot open file; errno=2 ld: fatal: File processing errors. No output written to a.out |