コンパイラコマンドラインオプションの順序

一般的に、コンパイラコマンドラインオプションは 1 回のコンパイラ呼び出しにおいて任意の順序で使用できます。ただし、その結果が、コマンドラインで指定される順序や他の関連オプションとの組み合わせ方によって変わるオプションもあります。例えば、-O で始まる最適化オプションやプリコンパイルヘッダ(PCH)オプションが、これに当てはまります。

コンパイラを使用すると、競合する可能性がある複数のオプションを使用することができます。つまり、メイクファイルや via ファイルなどの既存のコマンドラインに新しいオプションを追加することができます。

オプションが同じコマンドラインにある前のオプションをオーバーライドする場合、最後に指定されたオプションが必ず優先されます。以下に例を示します。

armcc -O1 -O3 -Ospace -Otime ...

これは、コンパイラによって以下のように実行されます。

armcc -O3 -Otime

環境変数 ARMCC41_CCOPT を使用すると、コンパイラコマンドラインオプションを指定できます。コマンドラインで指定されたオプションは、環境変数に指定されたオプションよりも優先されます。

コンパイラがどのようにコマンドラインを処理したかを確認するには、--show_cmdline オプションを使用します。これは、コンパイラが使用したデフォルト以外のオプションを示します。via ファイルの内容は展開されています。ここで使用した例では、コンパイラは armcc -O2 -Otime を実行しますが、--show_cmdline の出力には -O2 は含まれません。その理由は、-O2 がデフォルトの最適化レベルであり、--show_cmdline はデフォルトで適用されるオプションを表示しないためです。

Show/hide関連項目

Copyright © 2010 ARM. All rights reserved.ARM DUI 0472BJ
Non-ConfidentialID011811