静态库与动态库

目录

一、静态库

生成静态库的步骤:

①生成目标文件

②打包成静态库

③移动到系统搜索目录中

④链接文件时需加上库文件名 -lxxx

二、动态库

生成静态库步骤 

①生成目标文件

②打包生成动态库

③移动到系统搜索目录中

④链接文件时需加上库文件名 -lxxx

三、总结


一、静态库

通俗来讲:”轮子“包含在产品中

生成静态库的步骤:

①生成目标文件

gcc -c xxx.c -o xxx.o //可以包含多个.c文件

②打包成静态库

ar crsv libxxx.a xxx.o //libxxx.a中xxx是静态库的库名,xxx.o是目标文件,可以不止一个

如果需要使用该库文件,需要接来的两个步骤: 

③移动到系统搜索目录中

sudo mv libxxx.a /usr/lib

④链接文件时需加上库文件名 -lxxx

二、动态库

通俗来讲:”轮子“在运行时加入到产品中

生成静态库步骤 

①生成目标文件

gcc xxx.c -o xxx.o -fpic //-fpic作用是生成与位置无关代码

②打包生成动态库

gcc -shared xxx.o -o libxxx.so //libxxx.so中xxx是库名

 如果需要使用该库文件,需要接来的两个步骤: 

③移动到系统搜索目录中

sudo mv libxxx.so /usr/lib

④链接文件时需加上库文件名 -lxxx

如果需要升级动态库,只需更改/usr/lib下的libxxx.so的软连接即可

sudo ln -s libxxx.so.0.2 libxxx.so //将so版本升级为0.2版本

三、总结

静态库和动态库对比
特点产品大小部署难度升级难度
静态库容易
动态库容易

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值