リンクツールとオプション

ここでは、インテルが提供するリンクツール (xild (Linux* および Mac OS* X) または xilink (Windows*)) を使用する方法を説明します。

インテルのリンクツールは、プラットフォームごとに動作が異なります。次のセクションでは、リンク動作の主な違いをまとめています。

リンク動作のまとめ (Linux および Mac OS)

IR (中間表現) を含むオブジェクトが見つかった場合、リンクツールはコンパイラーを起動して IPO を実行します。(これらは擬似オブジェクトです。) GNU ld を起動してアプリケーションをリンクします。

xild のコマンドラインの構文は、GNU リンカーと同じです。

xild [<options>] <normal command-line>

説明:

  • [<options>]: (オプション) xild でのみサポートされる 1 つまたは複数のオプションです。

  • <normal command-line> は、ld の有効な引数のセットを含むリンカー・コマンドラインです。

IPO を使用して app を作成する場合、オプション -ofilename を次のように使用します。

xild -qipo-fas -oapp a.o b.o c.o

リンクツールは、IR を含むオブジェクトの IPO を実行するためにインテル® コンパイラーを呼び出し、リンクされるオブジェクトの新しい一覧を生成します。そして、リンカーは ld を呼び出して新しいリストで指定されたオブジェクト・ファイルにリンクし、-o オプションで指定されたアプリケーションを生成します。リンカーは、-ipo[n] および -ipo-separate オプションをサポートします。

リンク動作のまとめ (Windows*)

IR (中間表現) を含むオブジェクトが見つかった場合、リンクツールはインテル® コンパイラーを起動して複数ファイル IPO を実行します。これらは擬似オブジェクトです。Microsoft* link.exe を起動し、アプリケーションをリンクします。

インテル・リンカーのコマンドライン構文は、Microsoft リンカーと同じです。

xilink [<options>] <normal command-line>

説明:

  • [<options>]: (オプション) xilink でのみサポートされる 1 つまたは複数のオプションです。

  • <normal command-line> は、Microsoft リンカーの有効な引数のセットを含むリンカー・コマンドラインです。

複数ファイル 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 リンカーオプションで指定されたアプリケーションを生成します。

リンクツールの使用

次のような状況の場合、インテルが提供するリンクツールを使用してアプリケーションをリンクする必要があります。

次の表は、インテルのリンクツールでサポートされる利用可能な、大文字・小文字が区別されないオプションと各オプションの動作の簡単な説明をまとめたものです。

リンクツールのオプション

説明

-qdiag-type=diag-list

診断情報の表示を制御します。

type は診断に対して行う処理です。設定可能な値は以下のとおりです。

enable

診断メッセージまたはメッセージのグループを有効にします。

disable

診断メッセージまたはメッセージのグループを無効にします。

diag-list は診断グループまたは ID の値です。設定可能な値は以下のとおりです。

thread

プログラムのスレッド化に役立つ診断メッセージを指定します。

vec

ベクトライザーによって発行される診断メッセージを指定します。

par

自動パラレライザー (並列最適化機構) によって発行される診断メッセージを指定します。

openmp

OpenMP* 並列化によって発行される診断メッセージを指定します。

warn

重要度が "warning" (警告) の診断メッセージを指定します。

error

重要度が "error" (エラー) の診断メッセージを指定します。

remark

リマークまたはコメントの診断メッセージを指定します。

cpu-dispatch

診断メッセージの CPU ディスパッチ・リマークを指定します。デフォルトでは、これらのリマークは有効です。

id[,id,...]

1 つまたは複数のメッセージの ID を指定します。複数のメッセージ ID を指定する場合は、各メッセージ ID をカンマで区切る必要があります。各 "id" の間にはスペースを入れないでください。

tag[,tag,...]

1 つまたは複数のメッセージの簡略名を指定します。複数の簡略名を指定する場合は、各簡略名をカンマで区切る必要があります。各 "tag" の間にはスペースを入れないでください。

生成された診断メッセージは、 /arch または /Qx (Windows)、あるいは -m または -x (Linux および Mac OS X) などの一部のオプションによる影響を受けます。

-qhelp

利用可能なリンクツールのオプションをリストします。オプションを渡さない場合と同じです。

-qnoipo

複数ファイル IPO コンパイルを無効にします。

-qipo-fa [{filename | dir}]

複数ファイル IPO コンパイルのアセンブリー・リストを生成します。リストファイルの名前またはファイルを配置するディレクトリー (バックスラッシュ付き) を指定します。

デフォルトのリスト名はプラットフォームに依存します。

  • Linux* および Mac OS* X: ipo_out.s

  • Windows*: ipo_out.asm

インテルのリンクツールの呼び出しがマルチオブジェクトのコンパイルを行う場合、(アプリケーションが大きい、または複数のオブジェクトを明示的に要求した場合)、最初の .s ファイル (Linux* および Mac OS* X) または .asm ファイル (Windows*) は、-qipo-fa オプション (Windows*) からその名前を指定します。

それ以降の .s ファイル (Linux* および Mac OS* X) または .asm ファイル (Windows*) の名前には、取得したファイル名に 1 が足された数字が追加されます。例えば、ipo_fafoo.asm の場合、foo.asm および foo1.asm のようになります。-qipo-fo オプション (下記にリスト) の場合も同様です。

-qipo-fo [{filename | dir}]

複数ファイル IPO コンパイルのオブジェクト・ファイルを生成します。オブジェクト・ファイルの名前またはファイルを配置するディレクトリー (バックスラッシュ付き) を指定します。デフォルトのオブジェクト・ファイル名はプラットフォームに依存します。

  • Linux* および Mac OS* X: ipo_out.o

  • Windows*: ipo_out.obj

-qipo-fas

アセンブリー・リストにソース行を追加します。

-qipo-fac

アセンブリー・リストにコードバイトを追加します。

-qipo-facs

アセンブリー・リストにコードバイトおよびソース行を追加します。

-qomit-il

"xild -r" が使用された場合、生成された再配置可能なオブジェクトから il-data を省略します。これにより、再配置可能なオブジェクトが最適化に影響を与える可能性のある今後の IPO コンパイルに含まれなくなります。生成されたオブジェクト・ファイルのサイズを縮小します。

-quseenv

既存の PATH 変数、LIB 変数、INCLUDE 変数の上書きを無効にします。

-lib

リンカーの代わりにライブラリアンを起動します。

-libtool

Mac OS X: libtool を起動して、ld の代わりにライブラリーを作成します。

-qv

バージョン情報を表示します。

上記のオプションでは、ダッシュ (-) の代わりに下線 (_) を指定できます。



このヘルプトピックについてのフィードバックを送信

© 1996-2011 Intel Corporation. 無断での引用、転載を禁じます。