Oracle® Solaris 11.2 リンカーとライブラリガイド

印刷ビューの終了

更新: 2014 年 7 月
 
 

シンボルの処理

シンボルは、局所大域に分類できます。シンボルの可視性を参照してください。

局所シンボルは、入力ファイルの処理中に入力再配置可能オブジェクトファイルから構築中の出力オブジェクトに検査なしでコピーされます。

すべての入力再配置可能オブジェクトから渡される大域シンボルと外部依存関係から渡される大域シンボルは、シンボル解決と呼ばれるプロセスで分析および結合されます。リンカーは、各シンボルを検出された順に内部シンボルテーブルに配置します。同じ名前のシンボルが以前のオブジェクトによって提供され、シンボルテーブル内にすでに存在する場合は、シンボル解決プロセスによって 2 つのシンボルのどちらを保持するかが決定されます。このプロセスの副作用として、リンカーは外部オブジェクトの依存関係への参照を確立する方法を決定します。

入力ファイルの処理が正常終了すると、リンカーはシンボル可視性の調整を適用し、未解決のシンボル参照が残っているかどうかを判定します。シンボル解決の致命的エラーが発生した場合や、未解決のシンボル参照が残っている場合は、リンク編集が終了します。最後に、リンカーの内部シンボルテーブルが、作成されるイメージのシンボルテーブルに追加されます。

以降のセクションでは、シンボルの可視性、シンボル解決、および未定義シンボルの処理について詳しく説明します。