关于Linux动态链接so文件

在Linux下写C程序时,常常有很多基础通用重复性的代码,最常见的比如重复使用CURL库创建HTTP请求,动态链接库就为了解决这个问题,可以把重复性的函数库单独编译成so文件,然后多个程序可以共享一个so文件提供的函数库

Linux内置了一些常见的类库so文件,我们也可以自己编译自己需要的类库文件放到/usr/lib目录下,使用动态链接库有以下优势

  • 提升编译速度,类库部分不需要重新编译
  • 更容易升级部分功能,比如所有程序依赖curl库,那么如果curl可以单独升级而不用重新编译程序
  • 由于源码体积减少,所以编译出来的可执行文件体积也小

当然,也有缺点

  • 运行环境要准备好相关依赖库
  • 启动相对较慢,因为要加载动态库自然相比静态库慢一些,慢多少取决于实际环境
分享

TITLE: 关于Linux动态链接so文件

LINK: https://www.qttc.net/429-linux-so.html

NOTE: 原创内容,转载请注明出自琼台博客