コンパイラーは、現れた順にソース・ファイルを処理します。コンパイラーが指定されたソース・ファイルを見つけることができない場合は、エラー・メッセージを出し、次に指定されたファイルへ進みます。しかし、リンケージ・エディターは実行せず、一時オブジェクト・ファイルは除去されます。
ユーザー・プログラムは、いくつかのソース・ファイルから構成することができます。これらのソース・ファイルはすべて、コンパイラーを一回だけ呼び出すことで、一度にコンパイルすることができます。複数ソース・ファイルを、コンパイラーの一回の呼び出しを使用してコンパイルすることは可能ですが、呼び出しごとにコマンド行で指定できるコンパイラー・オプションは、 1 セットのみになります。異なるコマンド行コンパイラー・オプションをそれぞれ指定したい場合は、個別に呼び出す必要があります。
デフォルトでは、コンパイラーは、すべての指定されたソース・ファイルをプリプロセスして、コンパイルします。通常このデフォルトを使用しますが、コンパイラーを使用して、コンパイルせずにソース・ファイルをプリプロセスすることができます。その場合、-E または -P オプションのいずれかを指定します。 -P オプションを指定した場合は、プリプロセスされたソース・ファイル、file_name.i が作成され、処理は終了します。
-E オプションは、ソース・ファイルをプリプロセスし、標準出力へ書き込み、出力ファイルを生成せずに処理を停止します。
以下の種類のファイルを XL C/C++ コンパイラーに入力することができます。
受け入れられる入力ファイル・タイプ | |
C および C++ ソース・ファイル | これらは C または C++ ソース・コードを含むファイルです。
C コンパイラーとして使用して C 言語ソース・ファイルをコンパイルするには、ソース・ファイルに、例えば mysource.c のように .c (小文字の c) サフィックスを付けなければなりません。
C++ コンパイラーを使用するには、ソース・ファイルに、.C (大文字 C)、.cc、.cp、.cpp、 .cxx、または .c++ サフィックスを付けなければなりません。他のファイルを C++ ソース・ファイルとしてコンパイルするには、 -+ コンパイラー・オプションを使用します。サフィックスが .a、.o、 .s、または .so 以外で、このオプションで指定されているすべてのファイルは、 C++ ソース・ファイルとしてコンパイルされます。
|
プリプロセスされたソース・ファイル | プリプロセスされたソース・ファイルは、例えば file_name.i のように、.i サフィックスが付いています。コンパイラーは、プリプロセスされたソース・ファイル、file_name.i をコンパイラーへ送ります。そこで、そのファイルは .c または .C ファイルと同じ方法で再びプリプロセスされます。プリプロセスされたファイルは、マクロやプリプロセッサー・ディレクティブのチェックに役立ちます。
|
オブジェクト・ファイル | オブジェクト・ファイルには、サフィックス .o が必要です (例えば、file_name.o)。オブジェクト・ファイル、ライブラリー・ファイル、および非ストリップ実行可能ファイルは、リンケージ・エディターの入力として使用できます。コンパイル後、リンケージ・エディターは、実行可能なファイルを作成するため、指定されたすべてのオブジェクト・ファイルをリンクします。
|
アセンブラー・ファイル | アセンブラー・ファイルには、サフィックス .s が必要です (例えば、file_name.s)。アセンブラー・ファイルは、オブジェクト・ファイルを作成するために、アセンブルされます。 |
共用ライブラリー・ファイル | 共用ライブラリー・ファイルには、.so サフィックスが必要です (例えば、file_name.so)。
|
|
|