インテル® C++ コンパイラー 17.0 デベロッパー・ガイドおよびリファレンス
ここでは、インテルが提供するリンクツール、xild (Linux* および OS X*) と xilink (Windows®) を使用する方法を説明します。
インテルのリンクツールは、プラットフォームごとに動作が異なります。 次のセクションでは、リンク動作の主な違いをまとめています。
リンク動作のまとめ (Linux* および OS X*) |
---|
IR (中間表現) を含むオブジェクトが見つかった場合、リンクツールはインテル® C++ コンパイラーを起動して IPO を実行します。 これらは擬似オブジェクトです。 GNU* ld を起動してアプリケーションをリンクします。 xild のコマンドラインの構文は、GNU リンカーと同じです。 説明:
IPO を使用して app を作成する場合、o[filename]オプションを次のように使用します。
リンクツールは、IR を含むオブジェクトの IPO を実行するためにインテル® コンパイラーを呼び出し、リンクされるオブジェクトの新しい一覧を生成します。 そして、リンカーは ld を呼び出して新しいリストで指定されたオブジェクト・ファイルにリンクし、o オプションで指定されたアプリケーションを生成します。 リンカーは、ipo[n] および ipo-separate オプションをサポートします。 xild からサポートされているリンクオプションのリストを表示するには、次のコマンドを使用します。
|
リンク動作のまとめ (Windows®) |
---|
IR (中間表現) を含むオブジェクトが見つかった場合、リンクツールはインテル® C++ コンパイラーを起動して複数ファイル IPO を実行します。 これらは擬似オブジェクトです。 Microsoft® リンカー link.exe を起動し、アプリケーションをリンクします。 インテル・リンカーのコマンドライン構文は、Microsoft® リンカーと同じです。 説明:
複数ファイル IPO の実行ファイルを ipo_file.exe に格納するには、リンカーオプション out:filename を使用します。次に例を示します。
リンカーは、IR を含むオブジェクトの IPO を実行するためにインテル® コンパイラーを呼び出し、リンクされるオブジェクトの新しい一覧を生成します。 リンカーは、Microsoft® link.exe を呼び出し、新しいリストで指定されたオブジェクト・ファイルにリンクして、out:filename リンカーオプションで指定されたアプリケーションを生成します。 xilink からサポートされているリンクオプションのリストを表示するには、次のコマンドを使用します。
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 を使用する必要があります。 |