-library でライブラリを指定すると、適切な -I パスがコンパイルで設定されます。リンクでは、適切な -L、-Y P、および -R パスと、-l オプションが設定されます。
このオプションは、置き換えられる代わりに蓄積されます。
区間演算ライブラリを使用するときは、libC、libCstd、または libiostream のいずれかのライブラリを取り込む必要があります。
-library オプションを使用すると、指定したライブラリに対する -l オプションが正しい順序で送信されるようになります。たとえば、-library=rwtools7,iostream および -lirabary=iostream,rwtools7 のどちらでも、-l オプションは、-lrwtool -liostream の順序で ld に渡されます。
指定したライブラリは、システムサポートライブラリよりも前にリンクされます。
-library=sunperf と -xlic_lib=sunperf は同じコマンド行で使用できません。
どのコマンド行でも、-library=stlport4 または -library=Cstd オプションのうち使用できるオプションは、多くても 1 つだけです。
同時に使用できる RogueWave ツールライブラリは 1 つだけです。また、-library=stlport4 を指定して RogueWave ツールライブラリと併用することはできません。
従来の iostream RogueWave ツールライブラリを標準モード (デフォルトモード) で取り込む場合は、libiostream も取り込む必要があります (詳細は、『C++ 移行ガイド』を参照してください)。標準 iostream RogueWave ツールライブラリは、標準モードでのみ使用できます。次のコマンド例は、RogueWave tools.h++ ライブラリオプションの有効もしくは無効な使用法について示します。
% CC -compat -library=rwtools7 foo.cc <-- valid % CC -compat -library=rwtools7_std foo.cc <-- invalid % CC -library=rwtools7,iostream foo.cc <-- valid, classic iostreams % CC -library=rwtools7 foo.cc <-- invalid % CC -library=rwtools7_std foo.cc <-- valid, standard iostreams % CC -library=rwtools7_std,iostream foo.cc <-- invalid |
libCstd と libiostream の両方を含めた場合は、プログラム内で新旧両方の形式の iostream (例: cout と std::cout) を使用して、同じファイルにアクセスしないよう注意してください。同じプログラム内に標準 iostream と従来の iostream が混在し、その両方のコードから同じファイルにアクセスすると、問題が発生する可能性があります。
libC ライブラリをリンクしない互換モードプログラムは、C++ 言語のすべての機能を使用できるわけではありません。同様に、Crun ライブラリ、または Cstd と stlport4 いずれのライブラリもリンクしない標準モードプログラムは、C++ 言語のすべての機能を使用できるわけではありません。
-xnolib を指定すると、-library は無視されます。