C语言静态库的制作

库是什么,库就是别人事先写好的代码,我们可以下载下来编译,也可以直接用别人编译好的。

linux和windows下库文件的格式不兼容

linux下包含静态库和动态库

静态库就是将库文件和自己写的代码一起打包成一个可执行程序。

静态库程序多了之后,体积会很大。但是运行的时候不需要加载库,可以运行的更快。

动态库就是将库文件和自己写的代码分开,复制的时候需要一起移动。

介绍完这两个库的区别,我们来制作一个静态库

·····编译的程序中需要有main函数,不然无法生成可执行程序

首先说一下步骤

1、编写库文件代码,编译为.o目标文件

2、ar 命令创建 libxxx.a 文件

        ar -rsv libxxx.a xxxx.o

库文件的命名规则  要以lib开头  .a结尾,用.o文件来生成库

命令 ar -rsv libhello.a hello.o

下图是ar参数的介绍

生成一个库

 

t   就是查看库文件的相关信息 可以看该库文件是由什么产生的

查看库文件的信息

 

 

怎么使用库文件

gcc -o test test.c -L. -lhello

gcc -o 目标文件 源码.c -L路径 -lxxxx

-L.   就是在当前文件夹里面找,-L后面直接跟库所在的路径

-l 后面直接跟库的名字,不用写lib和后面的.a

 在程序中,直接声明库中有啥函数就可以了,或者写个头文件。

在生成可执行文件的时候指定下路径和库的名称就好了

静态库就是将所有的代码都打包到程序中去

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值