首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 操作系统 > UNIXLINUX >

温习Linux ELF共享库版本概念

2012-08-21 
复习Linux ELF共享库版本概念soname for a shared library:liblibrary name.so.major ver?fully-quali

复习Linux ELF共享库版本概念

soname for a shared library:

lib<library name>.so.<major ver>

?

fully-qualified soname for a shared library:

<path>/lib<library name>.so.<major ver>

?

real name for a shared library:

lib<library name>.so.<major ver>.<minor ver>.<release>

?

linker name for a shared library:

lib<library name>.so

?

一般soname对应的是一个符号链接,是在运行ldconfig时由其根据共享库header中的SONAME域创建的。如果创建共享库时未通过-Wl,-soname,...指定其SONAME,则ldconfig不会为其创建对应的soname符号链接。linker name对应的符号链接主要用于开发链接使用,一般是创建一个指向soname而不是real name的链接,以便减少版本更替时需要改变的链接数量(当然共享库数量较少时指向soname或real name均可,系统软件包也是两种方式都有采用的例子)。

?

<major ver>主要表明接口ABI兼容性,一般如果共享库接口产生了非向前兼容的更改就要升级<major ver>。

热点排行