静态库的创建与调用

静态库的创建:

 

静态库后缀通常以.a结尾,链接生成静态库时需要使用ar命令。

常用参数:

r                         在库中插入(修改)模块(替换静态库)。当插入的模块名已经在库中存在,          则替换同名的模块,如若干模块中有一个模块在库中不存在,则ar显示一个                 错误信息,并且不会替换其他同名模块

c                        创建一个新的库。不管库是否存在,都将创建

s                         创建目标文件索引,此参数在创建较大库时能加快时间。如果不需要创建索引,                          可改写成S参数;如果.a文件缺少索引,可以使用ranlib命令来添加索引

格式:ar rcs xxx.a xxx.o

 

创建目录:

编写文件:由于此文件用的和Makefile编译方式博文中的文件相同,所以只拷贝到需要的目录下即可

各文件内容为:

calculate.h

calculate.c

Makefile

Makefile编译,静态库创建成功

执行make install命令,将静态库拷贝到另一个目录下

结合以上过程可知:静态库的一般创建步骤为:

生成目标文件(.o)→生成静态库(.a)

*单文件时直接使用命令gcc –c main.c –o main.o生成目标文件,然后使用命令ar rcs main.a main.o

*多文件时使用Makefile编译

 

静态库的调用:

 

使用gcc命令加上库文件即调用成功

gcc –o calculate main.c ./static/libcalculate.a

main.c

编译运行:

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值