makefile例子

  1. @指代当前目标,就是Make命令当前构建的那个目标。比如,make foo的 @ 就指代foo。

  2. \< 指代第一个前置条件。比如,规则为 t: p1 p2,那么< 就指代p1。

  3. ? 指代比目标更新的所有前置条件,之间以空格分隔。比如,规则为 t: p1 p2,其中 p2 的时间戳比 t 新,?就指代p2。

  4. \^ 指代所有前置条件,之间以空格分隔。比如,规则为 t: p1 p2,那么 ^ 就指代 p1 p2 。

参考链接:https://www.ruanyifeng.com/blog/2015/02/make.html

例子:

bash 复制代码
SRCS = $(wildcard *.c *.s *.cpp)
OBJS = $(SRCS:.c = .o .cpp = .o .s = .o)
CC = arm-linux-gnueabihf-g++
#INCLUDES = -I/×××
#LIBS = -L/×××
CCFLAGS = -g -Wall -O0 -lc -lstdc++
hook : $(OBJS)
        $(CC) $^ -o $@
%.o : %.c %.s %.cpp
        $(CC) -c $< $(CCFLAGS)
clean:
        rm *.o
.PHONY:clean
相关推荐
15Moonlight9 小时前
Linux系统(02):基础开发工具
linux·运维·服务器
lightqjx9 小时前
VS Code连接Linux远端服务器的方法
linux·服务器·vs code
琥珀色糖10 小时前
Linux GDB调试
linux·运维·服务器·gdb·调试
weixin_3077791310 小时前
PHP 大文件上传:内存占用、超时与最佳实践
linux·服务器·开发语言·nginx·php
闲云野鹤在人间10 小时前
项目实战:LNMP-电商平台-ECshop
linux·运维·nginx·apache·lvs
吹什么轩11 小时前
linux网络:UDP套接字的业务实现:字典
linux·运维·udp
迷途之人不知返11 小时前
gcc编译器,以及源文件的翻译
linux
啊啊啊啊啊!!!!11 小时前
【Linux】初始Linux操作系统
linux·运维·服务器
runafterhit12 小时前
【学习地图】Linux学习类 · 文章索引
linux·运维·学习
杨云龙UP12 小时前
Oracle ASH 报告详解:与 AWR 的区别、使用场景及生成方法
linux·运维·服务器·数据库·oracle