linux创建静态库

创建一个目录,比如今天是6月13号,就mkdir 0613(创建目录0613),然后cd 0613(进入0613目录)

linux创建静态库_第1张图片

1.创建C语言库函数文件myheight.c

vi myhight.c

linux创建静态库_第2张图片

linux创建静态库_第3张图片

2.创建C语言函数文件myweight.c

   vi myweight.c

linux创建静态库_第4张图片

linux创建静态库_第5张图片

3.创建C语言函数文件age.c

vi myage.c

linux创建静态库_第6张图片

linux创建静态库_第7张图片

4.创建一个文件my.h,将以上三个函数写到里面,my.h作为头文件,只要写了这个头文件,就可以用这里面的3个函数

  vi my.h

linux创建静态库_第8张图片

将函数原型写到里面 

linux创建静态库_第9张图片

5.写C语言文件my.c,将上一步写的文件my.h作为头文件写进去,就可以在C语言程序中用那三个函数了

  vi my.c

linux创建静态库_第10张图片

linux创建静态库_第11张图片

注意scanf里面用了逗号,后买你在执行程序,输入的时候要将三个整数用逗号隔开 

6.编写makefile,维护文件的更新和变化

 vi makefile

linux创建静态库_第12张图片

linux创建静态库_第13张图片

把myage.c变成myage.o,将这个事情取一个名字,叫做myage,即为目标

这个目标需要一些前提(依赖),目标后面加一个冒号,把myage.c变成myage.o需要myage.c这个前提(依赖)

然后在下一行按Tab键,写的是规则(用什么规则来实现这个目标),将myage.c变成myage.o的规则是gcc -c myage.c

同理,写myheight.c和myweight.c

然后把这三个目标打成一个库,取名为mylib,依赖为myheight,myweight以及myage

规则为ar crv mylib.a myheight.o myweight.o myage.o(创建库函数mylib.a)

最后生成一个myapp(自己取的名字),依赖为my.c mylib

规则为gcc -omyapp my.c -L . mylib.a(创建链接执行C程序)

我们在用makefile这个文件指导make工作的时候,make命令只会自动地执行第一个,然后会查找第一个的依赖,然后依赖又有依赖,这样是一个递归的过程

然后按make命令 

linux创建静态库_第14张图片

最后按./myapp执行程序 

linux创建静态库_第15张图片

你可能感兴趣的:(linux,C语言,静态库)