makefile 學習筆記

2021-07-15 16:15:28 字數 904 閱讀 4851

makefile規則如下所示

目標:依賴檔案列表

命令列表

1、目標通常是要產生的檔名稱,目標可以是可執行檔案或obj檔案,也可是乙個動作的名稱.

2、依賴檔案是用來輸入從而產生目標的檔案.

乙個目標通常有幾個依賴檔案.

1、 make支援三種萬用字元:「*」,「?」和「[...]」

* :代替乙個和多個字元

?:代替乙個字元

2、makefile中的變數類似c/c++中的巨集

(1) eg:

objects = *.o(表示object的值就是'*.o'),如果想讓object的值是所有.o檔案的集合使用:

objects := $(wildcard *.o) (wildcard: makefile 關鍵字)

(2) 使用範圍:可以使用在makefile的各個部分中,在使用時,需要給在變數名前加上「$」符號,如果你要使用真實的「$」字元,那麼你需要用「$$」來表示

(3) :=(立即賦值)  ?=(條件賦值,如果沒有被定義就被複製,否則什麼都不做)

3、makefile 中vpath變數和vpath關鍵字進行檔案搜尋

vpath: vpath = src:../headers  中間使用:分隔

vpath %.h ../headers   要求make在「../headers」目錄下搜尋所有以「.h」結尾的檔案

4、makefile有三個非常有用的變數,分別是$@,$^,$《代表的意義分別是:

$@--目標檔案,$^--所有的依賴檔案,$<--第乙個依賴檔案。

5、自動化變數

6、關鍵字

$(wildcard *.c)

」來獲取工作目錄下的所有的

.c檔案列表

7、使用函式

makefile學習筆記 makefile概述

20180411 makefile學習筆記 makefile概述 makefile主要是在unix下軟體編譯時寫的,window下一般不用 unix裡makefile做的事 相當於window裡ide所做的事 會不會寫makefile,從乙個側面說明了乙個人是否具備完成大型工程的能力。makefil...

Makefile學習筆記

makefile for boot asm nasm 定義變數 asmflags i include run qemu system i386 hdd boot.img boot.img boot.asm asm boot.asm f bin o boot.img install run clean...

Makefile學習筆記

本文為學習筆記,僅供參考,如有好的建議歡迎指出!makefile規則 目標檔案 依賴檔案 tab 命令 命令前必須有乙個tab exp test main.c gcc main.c o test 隱式規則 o c 同名匹配 變數 類似於c中的巨集,引用方式 arg 變數名 值 引用變數可在之後定義 ...