インテル® Fortran コンパイラー 16.0 ユーザー・リファレンス・ガイド
ここでは、インテルが提供するリンクツール、xild (Linux* および OS X*) と xilink (Windows*) を使用する方法を説明します。
インテルのリンクツールは、プラットフォームごとに動作が異なります。次のセクションでは、リンク動作の主な違いをまとめています。
リンク動作のまとめ (Linux* および OS X*) |
---|
IR (中間表現) を含むオブジェクトが見つかった場合、リンクツールはインテル® Fortran コンパイラーを起動して IPO を実行します。これらは擬似オブジェクトです。GNU* ld を起動してアプリケーションをリンクします。 xild のコマンドラインの構文は、GNU リンカーと同じです。 xild [<options>] <normal command-line>説明:
IPO を使用して app を作成する場合、o[filename]オプションを次のように使用します。 xild -qipo-fas -oapp a.o b.o c.o リンクツールは、IR を含むオブジェクトの IPO を実行するためにインテル® コンパイラーを呼び出し、リンクされるオブジェクトの新しい一覧を生成します。そして、リンカーは ld を呼び出して新しいリストで指定されたオブジェクト・ファイルにリンクし、o オプションで指定されたアプリケーションを生成します。リンカーは、ipo[n] および ipo-separate オプションをサポートします。 xild からサポートされているリンクオプションのリストを表示するには、次のコマンドを使用します。 $ xild -qhelp |
リンク動作のまとめ (Windows*) |
---|
IR (中間表現) を含むオブジェクトが見つかった場合、リンクツールはインテル® Fortran コンパイラーを起動して複数ファイル IPO を実行します。これらは擬似オブジェクトです。Microsoft* リンカー link.exe を起動し、アプリケーションをリンクします。 インテル・リンカーのコマンドライン構文は、Microsoft* リンカーと同じです。 xilink [<options>] <normal command-line>説明:
複数ファイル IPO の実行ファイルを ipo_file.exe に格納するには、リンカーオプション out:filename を使用します。次に例を示します。 xilink -qipo-fas /out:ipo_file.exe a.obj b.obj c.obj リンカーは、IR を含むオブジェクトの IPO を実行するためにインテル® コンパイラーを呼び出し、リンクされるオブジェクトの新しい一覧を生成します。リンカーは、Microsoft* link.exe を呼び出し、新しいリストで指定されたオブジェクト・ファイルにリンクして、out:filename リンカーオプションで指定されたアプリケーションを生成します。 xilink からサポートされているリンクオプションのリストを表示するには、次のコマンドを使用します。 >> xilink /qhelp xilink.exe では link.exe のすべてのオプションを使用することができ、最後のリンク段階で link.exe に渡されます。 |
次のような状況の場合、インテルが提供するリンクツールを使用してアプリケーションをリンクする必要があります。
ソースファイルが複数ファイル IPO を有効にしてコンパイルされた場合。[Q]ipo を指定して複数ファイル IPO が有効にされた場合。
通常、アプリケーションをリンクするのに GNU* リンカー (ld) を起動する場合。
通常、アプリケーションをリンクするのに Microsoft* リンカー (link.exe) を起動する場合。
次の表は、リンクオプションに関する情報を示したものです。
リンクツールのオプション |
説明 |
---|---|
qdiag-[type]=[diag-list] |
診断情報の表示を制御します。 type は診断に対して行う処理です。設定可能な値は以下のとおりです。
diag-list は診断グループまたは ID の値です。設定可能な値は以下のとおりです。
注このオプションにより生成される診断メッセージは、/arch (Windows*)、-m (Linux* および OS X*)、または [Q]x などの一部のオプションによる影響を受けます。 |
qm32、qm64 |
qm32: IA-32 アーキテクチャー用のコードを生成します。 qm64: インテル® 64 アーキテクチャー用のコードを生成します。 例えば、インテル® 64 アーキテクチャー向けに構成されたコンパイル環境で [Q]m32 を使用する場合、IPO コンパイルや最終リンクで適切なターゲットが設定されるように、リンカーのコマンドラインでも qm32 を使用する必要があります。 |