新建一个add.h文件,内容如下:

#ifndef __ADD_H_
#define __ADD_H_
int add(int a,int b){
return a+b;
}

#endif

执行命令:

g++  -c add.h

这样会生成一个add.o的中间文件

执行命令:

ar rcs libmylib.a add.o

这样会生成一个libmylib.a的静态链接库文件
下面如何使用这个静态链接库文件呢?

新建一个测试文件testadd.c,内容如下:

#include<stdio.h>
#include "add.h"
int main(int argc,char* argv[]){

printf("add=%d\n",add(3,5));
return 0;
}

执行联合编译命令:

gcc -g -o testadd testadd.c -I . -L. -l mylib

这样会生成一个testadd的可执行文件

执行命令执行可执行文件

./testadd

输出结果:

[root@localhost c]# ./testadd
add=8

这样就演示了如何生成一个静态链接库到如何使用一个静态链接库。