Oracle® Solaris Studio 12.4: C++ ユーザーズガイド

印刷ビューの終了

更新: 2014 年 12 月
 
 

11.3 関連するライブラリオプション

CC ドライバには、ライブラリを使用するためのオプションがいくつかあります。

  • リンクするライブラリを指定するには、-l オプションを使用します。

  • ライブラリを検索するディレクトリを指定するには、-L オプションを使用します。

  • マルチスレッド化コードをコンパイルしてリンクするには、-mt オプションを使用します。

  • 区間演算ライブラリをリンクするには、-xia オプションを使用します。

  • Fortran または C99 実行時ライブラリをリンクするには、-xlang オプションを使用します。

  • Oracle Solaris Studio C++ コンパイラに付属する次のライブラリを指定するには、-library オプションを使用します。

    libCrun
    libCstd
    libiostream
    libC
    libcomplex
    libstlportlibstlport_dbg
    libgc
    libsunperf
    libstdcxx (Oracle Solaris OS の一部として配布)

-library オプションと -staticlib オプションの両方に指定されたライブラリは静的にリンクされます。 例:

次のコマンドでは libgc ライブラリが静的にリンクされます。

example% CC test.cc -library=gc -staticlib=gc

次のコマンドではライブラリ libCrun および libCstd がリンク対象から除外されます。指定しない場合は、これらのライブラリは自動的にリンクされます。

example% CC test.cc -library=no%Crun,no%Cstd

デフォルトでは、CC は、指定されたコマンド行オプションに従ってさまざまなシステムライブラリをリンクします。-xnolib (または -nolib) を指定した場合、 CC は、-l オプションを使用してコマンド行で明示的に指定したライブラリだけをリンクします。-xnolib または -nolib を使用した場合、-library オプションが存在していても無視されます。

-R オプションは、動的ライブラリの検索パスを実行可能ファイルに組み込むときに使用します。 実行時リンカーは、実行時にこれらのパスを使ってアプリケーションに必要な共有ライブラリを探します。CC ドライバは、コンパイラが標準の場所にインストールされている場合、<install-directory>/lib を指す 1 つまたは複数の -R オプションをデフォルトで ld に渡します。共有ライブラリのデフォルトパスが実行可能ファイルに組み込まれないようにするには、-norunpath を使用します。

デフォルトでは、リンカーは /lib および /usr/lib を検索します。-L オプションでこれらのディレクトリやコンパイラのインストールディレクトリを指定しないでください。

配備用に構築するプログラムは、コンパイラのディレクトリでライブラリを参照することを防止する -norunpath または -R オプションを使用して構築するようにしてください。共有ライブラリの使用を参照してください。