入力ファイルのタイプ

コンパイラーは、ソース・ファイルを表示される順に処理します。コンパイラーは指定されたソース・ファイルが見つからないと、エラー・メッセージを出し、次に指定されたファイルへ進みます。 ただし、リンカーは実行されず、一時オブジェクト・ファイルは除去されます。

コンパイラーはデフォルトで、指定されたすべてのソース・ファイルをプリプロセスしてコンパイルします。通常はこのデフォルトを使用しますが、コンパイラーを使用して、コンパイルなしでソース・ファイルをプリプロセスできます。詳しくは、『プリプロセッシング』を参照してください。

以下のタイプのファイルを XL C コンパイラーに入力することができます。
C ソース・ファイル
これらは C ソース・コードを含むファイルです。

C コンパイラーを使用して C 言語ソース・ファイルをコンパイルするには、-qsourcetype=c オプションでコンパイルしないのであれば、ソース・ファイルに .c (小文字の c) サフィックスを付ける必要があります。

プリプロセスされたソース・ファイル
プリプロセスされたソース・ファイルは .i サフィックスを含みます (例えば、file_name.i)。 コンパイラーは、プリプロセス済みのソース・ファイル file_name.i を、.c ファイル ファイルと同じようにコンパイラーに送り、再度プリプロセスを実行します。 プリプロセスされたファイルは、マクロやプリプロセッサー・ディレクティブの検査に役立ちます。
オブジェクト・ファイル
オブジェクト・ファイルは .o サフィックスを含まなければなりません (例えば file_name.o)。オブジェクト・ファイル、ライブラリー・ファイル、ストリップされていない実行可能ファイルは、リンカーへの入力として使用できます。 コンパイル後、リンカーは実行可能ファイルを作成するために、指定されたすべてのオブジェクト・ファイルをリンクします。
アセンブラー・ファイル
アセンブラー・ファイルは、-qsourcetype=assembler オプションでコンパイルしないのであれば、.s のサフィックスを持っていなければなりません (例えば、file_name.s)。 アセンブラー・ファイルは、オブジェクト・ファイルを作成するためにアセンブルされます。
プリプロセスされていないアセンブラー・ファイル
プリプロセスされていないアセンブラー・ファイルは、.S というサフィックスを指定する必要があります(file_name.S など)。ただし、-qsourcetype=assembler-with-cpp オプションを使用してコンパイルする場合は、このサフィックスを指定する必要はありません。 コンパイラーは、.S 拡張子を含むすべてのソース・ファイルを、プリプロセッシングを必要とするアセンブラー言語のソース・ファイルであるかのようにコンパイルします。
共有ライブラリー・ファイル
共有ライブラリー・ファイルには通常 .a サフィックスが付きます (例えば file_name.a) が、.so サフィックスを付けることもできます (例えば、file_name.so)。
非ストリップの実行可能ファイル
オペレーティング・システムの strip コマンドを使用してストリップされていない Extended Common Object File Format (XCOFF) ファイルは、コンパイラーへの入力として使用できます。 詳しくは、「AIX® コマンド解説書」の『strip コマンド』、および「AIX ファイル・リファレンス」の a.out ファイル形式の説明を参照してください。
関連情報