通常、ライブラリは ar などのライブラリ・マネージャを使用して作成されます。ライブラリ・マネージャは、オブジェクト・リストを読み取り、そのオブジェクトを、次のリンク段階で使用するライブラリに挿入します。
prompt>xiar cru user.a a.o b.o
a.o と b.o を含むライブラリ user.a が作成されます。
ただし、-ipo -c を使用してオブジェクトが作成された場合、オブジェクトは有効なオブジェクトではなく、そのオブジェクト・ファイルの中間表現 (IR) だけを含みます。
例:
prompt>icpc -ipo -c a.cpp b.cpp
リンク時のコンパイルに使用される IR だけを含んだ a.o と b.o が作成されます。ライブラリ・マネージャでは、このオブジェクトをライブラリに挿入できません。
この場合はライブラリ・ドライバ xild -ar を使用しなければなりません。このドライバは、オブジェクト・ファイルに保存している IR 上にコンパイラを呼び出し、ライブラリに挿入できる有効なオブジェクトを生成します。
prompt>xild -lib cru user.a a.o b.o
「xild を使用したマルチファイル IPO 実行ファイルの作成」を参照してください。