美文网首页
makefile 编写

makefile 编写

作者: rmrfany | 来源:发表于2019-01-13 17:15 被阅读0次

1. Makefile 中::=,?=, +=, =的区别

= 是最基本的赋值
:= 是覆盖之前的值
?= 是如果没有被赋值过就赋予等号后面的值
+= 是添加等号后面的值

=
make会将整个makefile展开后,再决定变量的值。也就是说,变量的值将会是整个makefile中最后被指定的值
x = foo
y = $(x) bar
x = xyz
y的值将会是 xyz bar ,而不是 foo bar

:=
:=表示变量的值决定于它在makefile中的位置,而不是整个makefile展开后的最终值
x := foo
y := $(x) bar
x := xyz
y的值将会是 foo bar ,而不是 xyz bar 了

一个简单的makefile示例

CC      := g++
C_FLAGS := -std=c++17 -Wall -Wextra

BIN     := bin
SRC     := src

INCLUDE := include
LIB     := lib

LIBRARIES   :=

ifeq ($(OS),Windows_NT)
EXECUTABLE  := main.exe
RM          := del
else
EXECUTABLE  := main
endif

all: $(BIN)/$(EXECUTABLE)

clean:
ifeq ($(OS),Windows_NT)
    $(RM) $(BIN)\\$(EXECUTABLE)
else
    $(RM) $(BIN)/$(EXECUTABLE)  
endif

run: all
    ./$(BIN)/$(EXECUTABLE)

$(BIN)/$(EXECUTABLE):   $(SRC)/*.cpp \
                        $(SRC)/tools/*.cpp
    $(CC) $(C_FLAGS) -I$(INCLUDE) -L$(LIB) $^ -o $@ $(LIBRARIES)

相关文章

  • makefile编写,GDB调试

    1.makefile编写的三要素 在学习编写makefile文件以前,我们先来看makefile编写的三要素。 1...

  • 编写Makefile及简单分析

    makefile的好处:一次编写,终身受益 makefile的命名规则: makefile Makefile ma...

  • 二 . 树莓派A20驱动程序编写(模板程序)

    1 Makefile Makefile文件编写如下: 2 *.c文件 建立一个test.文件,编写内容如下: 3 ...

  • Makefile 编写

    1. 原生 Makefile 自己编写 Makefile 文件 2. CMakeLists.txt 文件 CMak...

  • Makefile编写

    背景 以前学的一些东西需要记录下 Makefile 编写 以自己实际项目来阐述每个的用法 目录结构15324023...

  • 编写Makefile

    最近学习了如何编写Makefile,以下是一则实例 文件结构 Makefile实例

  • Makefile 编写

    通配符 $? 所有比目标新的依赖目标的集合 $^ 所有依赖 的集合 $+ 所有依赖的目标的集合,但是不去重 $% ...

  • makefile编写

    1、若是同一个目录下的C文件比如目录下有a.c、b.c两个文件,可编写如下

  • makefile 编写

    1. Makefile 中::=,?=, +=, =的区别 = 是最基本的赋值:= 是覆盖之前的值?= 是如果没有...

  • makefile入门一

    Linux下Makefile详解 下面就来看如何写Makefile文件:Makefile文件编写规范: 下来看事例...

网友评论

      本文标题:makefile 编写

      本文链接:https://www.haomeiwen.com/subject/ntrldqtx.html