Linux gcc 制作静态库01

制作步骤

  1. 编译为 .o 文件
createliba目录下
结构为
├── head
│   └── test.h
├── jia.c
├── jian.c
├── cheng.c
├── chu.c
这4个源文件,提供 + - * /算数运算, 使用了 head目录下 test.h文件
先编译为.o文件
gcc -c *.c -I./head
ls
cheng.c  cheng.o  chu.c  chu.o  head  jia.c  jian.c  jian.o  jia.o

  1. 将 .o文件 打包
ar rcs libxxx.a file1.o file2.o file3.o ...
比如我做的实验是:
ar rcs libjjcc.a *.o
  1. 将头文件与库一起发布
    这里我把头文件 head/test.h 与步骤2生成的libjjcc.a
    cp到testliba目录下
└── testliba
    ├── app
    ├── libjjcc.a
    ├── main.c
    └── test.h

cat main.c

#include "test.h"
int main() {
    int a = jia(3, 5);
    printf("3 + 5 = %d", a);
}

编译main.c

gcc main.c -o app -L ./ -l jjcc (其中-L,指定库目录, -l是指定库名)
生成app可执行文件
nm libxxx.a 查看打包的静态库
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值