リンカーとライブラリ

バージョンシンボルセクション

このセクションは SHT_SUNW_versym 型で定義されており、以下の構造を持つ要素配列からなります。


typedef Elf32_Half      Elf32_Versym;
typedef Elf64_Half      Elf64_Versym;

配列の要素数は、関連付けられているシンボルテーブルに存在するシンボルテーブルエントリ数 (セクション sh_link 値で決定される) に等しくなければなりません。配列の各要素には 1 つのインデックスが存在し、このインデックスは次の値をとることができます。

表 7-31 バージョン依存インデックス

名前 

値 

意味 

VER_NDX_LOCAL

0

シンボルに局所適用範囲が存在する。 

VER_NDX_GLOBAL

1

シンボルに大域適用範囲 (基底バージョン定義に割り当てられる) が存在する 

 

>1

シンボルに大域適用範囲 (ユーザー定義バージョン定義に割り当てられる) が存在する 

VER_NDX_GLOBAL より大きいインデックス値は、SHT_SUNW_verdef セクションのエントリの vd_ndx 値に一致しなければなりません。VER_NDX_GLOBAL より大きいインデックス値が存在しない場合、SHT_SUNW_verdef セクションが存在する必要はありません。