Skip to main content

1. Hello Makefile

·1 min
通过构建一个简单的C++ Hello Makefile项目来编写最基础的makefile文件

makefile的基本语法 #

Makefile的核心结构由目标 (Target)依赖 (Prerequisites)命令(commands) 组成

1
2
target: prerequisites
    commands

核心元素解析 #

  • TARGET(目标)
    • makefil中会有很多目标。目标通常是一个库文件或可执行文件
    • 也可以是一个"伪目标",用于执行特定操作(比如清理构建过程中产生的中间文件)
  • PREREQUISITES(依赖项)
    • 空格注意:在冒号:与依赖项之间有一个空格,这是需要注意的格式规范
    • 每个目标可以有0个或多个依赖项
      • 无依赖:执行make target时,直接执行对应的命令
      • 有依赖:执行时先检查依赖项是否存在。若存在,执行当前命令;若不存在,则递归查找生成该依赖项的规则
  • COMMANDS(命令)
    • 针对每个目标的命令是一系列需要shell执行的命令集合
格式警告:在命令前必须使用制表符,而不能使用空格,否则make无法解析,会直接报错