Linux 6.26 day06 库文件

库文件

静态库 共享库

库:预先编译好的方法(函数)的集合

静态库:libxx.a
共享库:libxx.so

静态库的创建:
add.c -> add.o
max.c -> max.o

ar crv libfoo.a add.o max.o

gcc -o main main.c -L位置 -l库名

共享库的创建:
add.c -> add.o
max.c -> max.o

gcc -o main main.c -L位置 -l库名

gcc -o mian main.c -L位置 -l库名

静态库和共享库的区别:
Windows 上称为 静态库和动态链接库
静态库 :包含用到库中的方法 编译时已调用 已将需要使用的部分作为程序一部分 不要求系统上有库 运行不需要寻找 缺点:不利于资源利用 占内存
共享库 :不包含用到库中的方法 一个库被数多程序共享 运行时调用 要求运行时目标主机上存在共享库 若不存在则程序无法执行

使用共享库编译出可执行程序比静态库编译出的程序小一些
使用静态库编译的可执行程序不能更换链接的静态库 只能重新编译main.c链接新的静态库

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值