Go to main content
Oracle® Solaris 11.3 リンカーとライブラリガイド

印刷ビューの終了

更新: 2015 年 10 月
 
 
第 4 章

共有オブジェクト

共有オブジェクトは、リンカーによって作成される出力形式の 1 つであり、–G オプションを指定して生成されます。

共有オブジェクトとは、1 つまたは複数の再配置可能なオブジェクトから生成される分割できないユニットです。共有オブジェクトは、動的実行可能ファイルと結合して「実行可能」プロセスを形成することができます。共有オブジェクトは、その名前が示すように、複数のアプリケーションによって共有できます。このように共有オブジェクトの影響力は非常に大きくなる可能性があるため、この章では、リンカーのこの出力形式について前の章よりも詳しく説明します。

共有オブジェクトを動的実行可能ファイルやほかの共有オブジェクトに結合するには、まず共有オブジェクトが必要な出力ファイルのリンク編集に使用可能でなければなりません。このリンク編集中、入力共有オブジェクトはすべて、作成中の出力ファイルの論理アドレス空間に追加された場合のように解釈されます。共有オブジェクトのすべての機能が、出力ファイルにとって使用可能になります。

入力された共有オブジェクトはすべて、この出力ファイルの依存関係になります。出力ファイル内には、この依存関係を記述するための少量の登録情報が保持されます。実行時リンカーは、この情報を解釈し、「実行可能」プロセス作成の一部として、これらの共有オブジェクトの処理を完了します。

次のセクションでは、コンパイル環境と実行時環境内での共有オブジェクトの使用法について詳しく説明します。これらの環境については、実行時リンクを参照してください。