コンパイラーの呼び出し

異なる形式の XL C/C++ コンパイラー呼び出しコマンドが異なるレベルの C および C++ 言語をサポートしています。ほとんどの場合は、xlc コマンドを使用して C ソース・ファイルをコンパイルし、xlc++ コマンドを使用して C++ ソース・ファイルをコンパイルします。C と C++ 両方のオブジェクト・ファイルがある場合は、xlc++ を使用してリンクしてください。

呼び出しコマンドはすべて、マルチスレッド化を使用するプログラムをリンクするために使用できます。 呼び出しコマンドの _r バージョンは、後方互換性のためにのみ使用されます。

注: 各呼び出しコマンドに対し、コンパイラー構成ファイルでデフォルトのオプション設定が定義され、場合によってはマクロが定義されます。特定の呼び出しによって暗黙指定されるデフォルト情報については、ご使用システムの システムの /opt/ibm/xlC/16.1.0/etc/xlc.cfg.$OSRelease.gcc$gccVersion ファイル。
デフォルト構成ファイルの例は以下のとおりです。
  • /opt/ibm/xlC/16.1.0/etc/xlc.cfg.sles.12.gcc.4.8.2
  • /opt/ibm/xlC/16.1.0/etc/xlc.cfg.rhel.7.3.gcc.4.8.5
  • /opt/ibm/xlC/16.1.0/etc/xlc.cfg.centos.7.gcc.4.8.5
  • /opt/ibm/xlC/16.1.0/etc/xlc.cfg.ubuntu.16.04.gcc.4.8.2
表 1. コンパイラー呼び出し
呼び出し 説明 同等の呼び出し
xlc C ソース・ファイル用のコンパイラーを呼び出します。 このコマンドは、すべての ISO C99 標準機能および大半の IBM 言語拡張機能をサポートします。 この呼び出しは、すべてのアプリケーションに使用することをお勧めします。 xlc_r
c99 C ソース・ファイル用のコンパイラーを呼び出します。このコマンドは、すべての ISO C99 言語機能をサポートしますが、IBM 言語拡張機能はサポートしません。C99 規格に厳密に準拠する必要がある場合は、この呼び出しを使用してください。 c99_r
c89 C ソース・ファイル用のコンパイラーを呼び出します。このコマンドは、すべての ANSI C89 言語機能をサポートしますが、IBM 言語拡張機能はサポートしません。 C89 規格に厳密に準拠する必要がある場合は、この呼び出しを使用してください。 c89_r
cc C ソース・ファイル用のコンパイラーを呼び出します。 このコマンドは、ANSI C 以前、および多くの共通言語拡張機能をサポートします。 このコマンドを使用すると、標準 C に準拠しないレガシー・コードをコンパイルできます。 cc_r
xlc++, xlC C++ ソース・ファイル用のコンパイラーを呼び出します。 いずれかのソース・ファイルが C++ の場合は、適正なランタイム・ライブラリーとリンクするために、この呼び出しを使用する必要があります。

.c サフィックスのファイルは、-+ コンパイラー・オプションが使用されていないと想定して、C 言語ソース・コードとしてコンパイルされます。

xlc++_r、xlC_r

関連情報