インテル® C++ コンパイラー 18.0 デベロッパー・ガイドおよびリファレンス

IPO オブジェクトからのライブラリーの作成

Linux* および macOS*

ライブラリーはよく xiar (Linux* および macOS*) や xilib (Windows*) などのライブラリー・マネージャーを使用して作成されます。ライブラリー・マネージャーは、オブジェクト・リストを読み取り、そのオブジェクトを、次のリンク段階で使用するライブラリーに挿入します。

xiar cru user.a a.o b.o

上記のコマンドは、a.o および b.o を含む user.a ライブラリーを作成します。

[Q]ipo -c を使用してオブジェクトが作成された場合、アーカイブには有効なオブジェクトだけでなく、そのオブジェクト・ファイルの中間表現 (IR) も含まれます。例えば、次の例は、a.o および b.o を生成します。これらのオブジェクト・ファイルは、各ソースファイルに対するオブジェクト・コードと IR が含まれたライブラリーを生成するためにアーカイブされる可能性があります。

icc -ipo -c a.cpp b.cpp

上記のコマンドは、擬似オブジェクト・ファイルを生成します。擬似オブジェクト・ファイルは、実際のオブジェクト・ファイルと一緒にアーカイブに配置されます。

xiar を使用することは、xild -lib を指定するのと同じです。

macOS* のみ

xilibtool を使用する場合、スタティック・ライブラリーを生成するには -static を、ダイナミック・ライブラリーを生成するには dynamic を指定します。例えば、次のコマンドは、a.ob.o、および c.o オブジェクトを含むスタティック・ライブラリー、mylib.a を作成します。

xilibtool -static -o mylib.a a.o b.o c.o

次のコマンド例は、a.ob.o、および c.o オブジェクトを含むダイナミック・ライブラリー、mylib.dylib を作成します。

xilibtool -dynamic -o mylib.dylib a.o b.o c.o

xilibtool を指定することは、xild -libtool を指定するのと同じです。

Windows* のみ

xilib または xilink -lib を使用してライブラリーを作成し、IPO 擬似オブジェクト・ファイルのライブラリーを作成して、コマンドラインでそれらをリンクします。

例えば、次のようなコマンドを使用して 3 つの擬似オブジェクト・ファイルを作成するとします。

icl /c /Qipo a.cpp b.cpp c.cpp

さらに、a.obj にはメインのサブプログラムが含まれているとします。次のようなコマンドを入力して、ライブラリーを作成します。

xilib -out:main.lib b.obj c.obj
または
xilink -lib -out:main.lib b.obj c.obj

ライブラリーとメインプログラムのオブジェクト・ファイルを次のようなコマンドを入力してリンクします。

xilink -out:result.exe a.obj main.lib

関連情報