一,简介
本文主要介绍如何使用gcc编译代码生成静态库,并调用静态库运行的操作步骤。
二,准备工作
使用add.c和main.c生成test可行性文件的流程图:
add.c文件的内容:
#include "add.h"
int add(int a, int b)
{
printf("call add function: %d + %d = %d\r\n", a, b, a+b);
return a+b;
}
add.h文件的内容:
#include <stdio.h>
int add(int a, int b);
main.c文件的内容:
#include <stdio.h>
#include "add.h"
int main()
{
int a=4, b=5;
add(a, b);
a++;
b++;
add(a, b);
return 0;
}
三,操作步骤
3.1 使用add.c生成libmath.a
生成对应目标文件:
gcc -c add.c
将目标文件打包生成静态库:
ar -crv libmath.a add.o
3.2 调用libmath.a静态库生成可执行文件test
这里提供三种方法,选取其中一个即可。
方法一:-L路径 -l算法库名称
gcc -o test main.c -L. –lmath
方法二:直接加库的路径
gcc main.c libmath.a -o test
方法三:先生成main.o再打包成可执行文件
gcc -c main.c
gcc -o test main.o libmath.a
3.3 运行可执行文件test
$ ./test.exe
call add function: 4 + 5 = 9
call add function: 5 + 6 = 11
综上,静态库打包和运行均已完成。
四,总结
本文主要介绍了如何生成静态库,以及如何调用静态库的方法,供参考。欢迎一起交流讨论~