链接程序和库指南

版本符号节

版本符号节由类型 SHT_SUNW_versym 定义。此节包含具有以下结构的元素的数组。

typedef Elf32_Half      Elf32_Versym;

typedef Elf64_Half      Elf64_Versym;

该数组的元素数目必须等于关联符号表中包含的符号表项的数目。此数目根据该节的 sh_link 值确定。该数组的每一个元素都包含一个索引,这些索引可以具有下表中所示的值。

表 7–24 ELF 版本依赖性索引

名称 

值 

含义 

VER_NDX_LOCAL

0

符号具有局部范围的索引。 

VER_NDX_GLOBAL

1

符号具有全局范围的索引,并且会指定给基版本定义。 

 

>1

符号具有全局范围的索引,并且会指定给用户定义的版本定义。 

任何大于 VER_NDX_GLOBAL 的索引值都必须与 SHT_SUNW_verdef 节中的项的 vd_ndx 值对应。如果不存在大于 VER_NDX_GLOBAL 的索引值,则无需存在 SHT_SUNW_verdef 节。