// 步骤1:编写库源码(math.cpp)
int add(int a, int b) { return a + b; }
int sub(int a, int b) { return a - b; }
// 步骤2:编译为目标文件
g++ -c math.cpp -o math.o
// 步骤3:打包为静态库
ar rcs libmath.a math.o // ar工具打包,rcs:创建、替换、索引
(2)使用静态库
cpp
运行
// main.cpp
#include <iostream>
// 声明库函数(或包含头文件)
int add(int a, int b);
int sub(int a, int b);
int main() {
std::cout << add(3, 2) << std::endl; // 输出5
return 0;
}
// 编译链接静态库
g++ main.cpp -o main -L. -lmath // -L指定库路径,-l指定库名(libmath.a → math)