静态库的创建

静态库,libxxx.a,在编译时就将库编译进可执行程序中。
1.优点:程序的运行环境中不需要外部的函数库。
2.缺点:可执行程序大

静态库的制作:

1.生成目标文件:gcc -c file.c .o
2.静态函数库创建命令ar

操作静态库的几个实例:
情况1: 如果从别处得到一个静态库libunknown.a,想知道其中包含哪些模块。
命令:ar -t libunknown.a
静态库的编译:gcc -o main main.c -L. -lfile编译main.c就会把静态函数库整合进main
其中:
-L指定静态函数库的位置供查找,注意L后面还有'.',表示静态函数库在本目录下查找。
-l则指定了静态函数库名,由于静态函数库的命名方式是lib***.a,其中的lib.a忽略。
删除libaddsub.amain依然可以运行,因为静态库的内容已经整合进去了。
例子讲解:

创建一个C语言文件,并写入如下代码

#include<stdio.h>
int main()
{
int x,y;
int ret;
x=10;
y=5;
ret =sub(x,y);
printf("ret is %d\n",ret);
return 0;
}

创建一个sub.c文件,并写入如下代码

int  sub(int x,int y)
{
        return (x-y);
}

 生成目标文件和静态函数库

 重新编译命令

 执行代码,编译若有报错是没有找到sub函数,直接运行代码

   zhixzhi'x

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值