静态链接库生成步骤:
1.在桌面生成一个文件夹,目录如下:
calc.h
#include <iostream>
using namespace std;
void add(int a,int b);
void mul(int a,int b);
add.cpp
#include "..\include\calc.h"
void add(int a,int b)
{
cout<<a+b<<endl;
}
mul.cpp
#include "..\include\calc.h"
void mul(int a,int b)
{
cout<<a*b<<endl;
}
2.在test/src 文件夹下打开终端
输入命令,此命令作用是将.cpp文件生成.o文件
gcc -c add.cpp mul.cpp
可以看到在src目录下多了add.o和mul.o
3.生成静态库
输入命令,此命令作用是将.o文件生成静态库.a文件
ar -rcs libcalc.a add.o mul.o
到此静态库生成完毕,下面进行测试!
1.新建一个文件夹,将之前的.h文件和.a文件放入,并编写一个测试文件main.cpp,目录如下:
main.cpp
#include "calc.h"
int main()
{
int a = 5;
int b = 6;
add(a,b);
mul(a,b);
}
2.在该文件夹下打开终端
输入命令,该命令作用是将main.cpp编译成可执行文件test,-L 表示静态库地址 -l (小写L)表示静态库名称,需要掐头去尾(去掉前面的lib和后面的.a),-I(大写i)接用到的头文件地址 -lstdc++表示使用C++标准
gcc main.cpp -o test -L .\lib -l calc -I .\include -lstdc++
可以看到在该目录下生成了一个test.exe文件
3.执行test.exe文件
输入命令运行可执行文件,输出内容,测试完成!
./test.exe