Sun C++ コンパイラには、いくつかのライブラリが添付されています。これらのライブラリには、互換モード (-compat=4) だけで使用できるもの、標準モード (-compat=5) だけで使用できるもの、あるいは両方のモードで使用できるものがあります。libgc ライブラリと libdemangle ライブラリには C インタフェースがあり、どちらのモードでもアプリケーションにリンクできます。
次の表に、Sun C++ コンパイラに添付されるライブラリと、それらを使用できるモードを示します。
ライブラリ |
名称 |
使用できるモード |
---|---|---|
libCrun |
C++ 実行時 |
-compat=5 |
libCstd |
C++ 標準ライブラリ |
-compat=5 |
libiostream |
従来の iostream |
-compat=5 |
libC |
C++ 実行時、従来の iostream |
-compat=4 |
libC_mtstubs |
mt スタブライブラリ |
-compat=4、-compat=5 |
libcomplex |
複素数ライブラリ |
-compat=4 |
librwtool |
Tools.h++ 7.0 |
-compat=4、-compat=5 |
librwtool_dbg |
デバック可能な Tools.h++ 7.0 |
-compat=5 |
libgc |
ガベージコレクション |
C インタフェース |
libgc_dbg |
デバッグ可能なガベージコレクション |
-compat=4、-compat=5 |
libdemangle |
復号化 |
C インタフェース |
これらのライブラリについて簡単に説明します。
libCrun: このライブラリには、コンパイラが標準モード (-compat=5) で必要とする実行時サポートが含まれています。new と delete、例外、RTTI がサポートされます。
libCstd: これは C++ 標準ライブラリです。特に、このライブラリには iostream が含まれています。既存のソースで従来の iostream を使用している場合には、ソースを新しいインタフェースに合わせて修正しないと、標準 iostream を使用できません。詳細は、標準 C++ ライブラリのマニュアルを参照してください。
libiostream: これは標準モード (-compat=5)で構築した従来の iostream ライブラリです。既存のソースで従来の iostream を使用している場合には、libiostream を使用すれば、ソースを修正しなくてもこれらのソースを標準モード (-compat=5) でコンパイルできます。このライブラリを使用するには、-library=iostream を使用します。
libC: これは互換モード (-compat=4) で必要なライブラリです。このライブラリには C++ 実行時サポートだけでなく従来の iostream も含まれています。
libC_mtstubs: このライブラリには一部の libthread 関数のスタブが含まれています。このライブラリはスレッドが 1 つのアプリケーションの場合にリンクされます。 -mt オプションでアプリケーションを構築する場合は、libC_mtstubs の代わりに libthread がリンクされます。
libcomplex: このライブラリは、互換モード (-compat=4) で複素数の演算を行うときに必要です。標準モードの場合は、 libCstd の複素数演算の機能が使用されます。
libwtool: (Tools.h++ 7) これは RougeWave の Tools.h++ バージョン 7 ライブラリです。
libgc: これはガベージコレクションライブラリ (Sun WorkShop Memory Monitor の構成要素) です。このライブラリの詳細は、Web ブラウザで次のファイルを参照してください。
/opt/SUNWspro/SC5.0/htmldocs/locale/ja/gc/start.html
コンパイラがこれとは異なるディレクトリにインストールされている場合は、次のようにしてください。install_directory にはインストール先を入力してください。
install_directory/SC5.0/htdocs/start.html
libdemangle: このライブラリは C++ 符号化名を復号化するときに使用します。
これらのライブラリには、CC ドライバによってデフォルトでリンクされるものと、明示的にリンクしなければならないものがあります。標準モードでは、次のライブラリが CC ドライバによってデフォルトでリンクされます。
-lm -liostream -lCstd -lCrun -lC_mtstubs -lw -lcx -lc
互換モードでは、次のライブラリがデフォルトでリンクされます。
-lm -lC -lC_mtstubs -lw -lcx -lc
詳細は、「-library=l[,...l]」を参照してください。