linux 动态链接库名称里的数字代表什么?

来源:百度知道 编辑:UC知道 时间:2024/06/24 18:28:34

libpinyin.so.0
libpinyin.so.1.2.3

Linux操作系统也提供了一种更为方便的动态库调用方式,也方便了其它程序调用,这种方式与Windows系统的隐式链接类似。其动态库命名方式为“lib*.so.*”。在这个命名方式中,第一个*表示动态链接库的库名,第二个*通常表示该动态库的版本号,也可以没有版本号。在这种调用方式中,需要维护动态链接库的配置文件/etc/ld.so.conf来让动态链接库为系统所使用,通常将动态链接库所在目录名追加到动态链接库配置文件中。如具有X window窗口系统发行版该文件中都具有/usr/X11R6/lib,它指向X window窗口系统的动态链接库所在目录。为了使动态链接库能为系统所共享,还需运行动态链接库的管理命令./sbin/ldconfig。在编译所引用的动态库时,可以在gcc采用 ?l或-L选项或直接引用所需的动态链接库方式进行编译。在Linux里面,可以采用ldd命令来检查程序依赖共享库。

基本上如同楼上所言 我再补充一下 通常的 当一个较新版本的库存在时,有些较老的软件需要老版本的库, 这时候如果新版本自动兼容于老版本的话,安装的时候将自动创建若干个softlink 将老库名字链接到新库 这样就出现了

lib*.so.0和
lib*.so.1.2.3这样的形势