2016 - 2024

感恩一路有你

linux动态链接库 linux静态库和共享库的区别?

浏览量:1951 时间:2021-03-11 15:41:16 作者:admin

linux静态库和共享库的区别?

动态链接库和静态链接库通常编译为集成一系列接口(函数)。程序源代码编译后,由编译器编译并通过链接器与这些库链接。动态链接库和静态链接库的区别在于,当链接器链接时,静态链接库会直接编译到程序中,而动态链接库不会。我们将在这里讨论这些链接库称为依赖(动态库和静态库)。程序的运行需要这些依赖关系。静态链接后,程序本身包含依赖项,而动态链接后的程序本身不包含依赖项。这些依赖关系需要执行者自己将它们安装到操作系统(动态库和运行库)中。当程序运行时,它将动态加载这些库静态库的一般后缀是。A.由于静态链接将库直接编译到程序中,因此静态编译的程序比动态链接的程序大。这是因为静态链接会将库编译成程序,所以占用空间会很大。因此,静态库不易维护和更新,如果在需要更新时链接库中出现实现错误,则需要更新整个程序,因为静态库是编译到程序中的,而动态库则不是。因为动态库是在程序运行时动态加载的,所以我们只需要更新动态库,而不需要更新依赖于动态库的所有程序(软件)。另一方面,许多程序开发将使用相同的链接库,即许多程序(软件)将具有相同的依赖关系。如果所有这些依赖项都是静态编译的,将导致存储资源过多和资源浪费。通过使用动态库,这些程序(软件)可以共享一个链接库,而不必为每个程序带来一个链接库,从而大大减少存储资源空间

==查看您的创建共享库命令-soname-利比。苏. 1这是共享库的名称利比。苏1啊!--库=利比。苏.1(libc6)=>/usr/lib/--库=伊比。苏. 1此语句的含义如下:有一个名为libc6的库,名为利比。苏. 1,文件放在/usr/lib/-soname中,后跟库的名称。除非你改变主意。所以强制文件,它不会改变。-后面跟着生成的文件名,会变的!

linux动态链接库 Linux动态库中的全局变量 linux查找程序依赖的库文件

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。