Makefile 编译静态库

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
CC = gcc
AR = ar
FLAGS = -Wall -lpthread
 
CLOUD = cloud_server
OBJ += cloud_server.o
 
LIB = libccloud.a
LIBOBJ = cloud_client.o
LIBSRC = cloud_client.c
 
all: $(LIB) $(CLOUD)
$(LIBOBJ):$(LIBSRC)
        $(CC) $(FLAGS)  -c $(LIBSRC)
 
$(LIB):$(LIBOBJ)
        $(AR) cq $@ $^
 
$(CLOUD):$(OBJ)
        $(CC)  $(OBJ) -o $@  $(FLAGS)
 
%.o:%.c %.h
        $(CC)   $^ -o $@  $(FLAGS)
 
.PHONY:clean
clean:
        rm cloud_server *.o *.a -r

  

一次编译多个文件,使用all 后面加上要生成的文件的名字; 生成库 使用ar cp , ar cps。

posted @   wanhl  阅读(2598)  评论(0编辑  收藏  举报
编辑推荐:
· Java 中堆内存和栈内存上的数据分布和特点
· 开发中对象命名的一点思考
· .NET Core内存结构体系(Windows环境)底层原理浅谈
· C# 深度学习:对抗生成网络(GAN)训练头像生成模型
· .NET 适配 HarmonyOS 进展
阅读排行:
· 手把手教你更优雅的享受 DeepSeek
· AI工具推荐:领先的开源 AI 代码助手——Continue
· 探秘Transformer系列之(2)---总体架构
· V-Control:一个基于 .NET MAUI 的开箱即用的UI组件库
· 乌龟冬眠箱湿度监控系统和AI辅助建议功能的实现
点击右上角即可分享
微信分享提示