インテル® C++ コンパイラー 18.0 デベロッパー・ガイドおよびリファレンス

コンパイルフェーズ

インテル® C++ コンパイラーは、C と C++ 言語のソースファイルを処理します。コンパイルは次の主要なフェーズで構成されています。

最初の 4 つのフェーズはコンパイラーによって実行されます。

# Linux* および macOS*
icc, icpc
# Windows*
icl.exe

デフォルトでは、コンパイラーは自動的にリンカーを呼び出し、最終的なバイナリー実行ファイルを生成します。

# Linux* および macOS*
xild
# Windows*
xilink.exe

コンパイル時に c オプションを指定すると、コンパイラーはオブジェクト・ファイルのみ生成します。実行ファイルを生成するには、明示的にリンカーを呼び出す必要があります。

32 ビットのターゲット向けにコンパイルする場合は、INTEL_TARGET_ARCH_IA32 環境変数を設定するか、[Q]m32 オプションを指定します。c オプションを指定する場合は、[Q]m32 オプションもリンカーに渡す必要があります。

コンパイラーの呼び出し時に E オプションと P オプションを指定すると、コンパイラーは拡張子が .i の前処理済みファイルのみ生成します。

[Q]ipo オプションを指定して複数ファイルにわたるプロシージャー間の最適化 (プログラム全体の最適化とも呼ばれる) を使用すると、リンク時に最適化が行われます。同様に、[Q]prof-gen を指定してプロファイルに基づく最適化を使用すると、リンク時に最適化が行われます。

どちらの場合も、インテル® C++ コンパイラーは、リンカー (xilink.exexild) だけが理解できる擬似オブジェクト・ファイルを生成します。コンパイラー・ドライバーを使用してリンク段階を実行することもできます (icl.exeicc、および icpc)。

関連情報