一、makefile 的規則
在講述這個 makefile 之前,還是讓我們先來粗略地看一看makefile 的規則。
target ... : prerequisites ...
command
......
target也就是乙個目標檔案,可以是object file,也可以是執行檔案。還可以是乙個標
籤(label),對於標籤這種特性,在後續的「偽目標」章節中會有敘述。
prerequisites就是,要生成那個target 所需要的檔案或是目標。
command也就是make 需要執行的命令。(任意的shell 命令)
這是乙個檔案的依賴關係,也就是說,target 這乙個或多個的目標檔案依賴於prerequisites
中的檔案,其生成規則定義在command 中。說白一點就是說,prerequisites 中如果有乙個以
上的檔案比target 檔案要新的話,command 所定義的命令就會被執行。這就是makefile 的
規則。也就是makefile 中最核心的內容。
二、通過make命令即可執行makefile或makefile檔案。
三、在makefile中可以使用變數,其變數就是乙個字串,可以理解成c語言中的巨集
比如: object = main.o hello.o
於是,我們就可以很方便地在我們的 makefile 中以「$(objects)」的方式來使用這個變數了,
四、makefile中的命令以tab按鍵開頭
五、:= 這種方法,前面的變數不能使用後面的變數,只能使用前面已定義好了的變數。
六、還有乙個比較有用的操作符是「?=」,先看示例:
foo ?= bar
其含義是,如果 foo 沒有被定義過,那麼變數foo 的值就是「bar」,如果foo 先前被定
義過,那麼這條語將什麼也不做,其等價於:
ifeq ($(origin foo), undefined)
foo = bar
endif
七、我們可以使用「+=」操作符給變數追加值,如:
objects = main.o foo.o bar.o utils.o
objects += another.o
Makefile一些摘要
makefile裡主要包含了五個東西 顯式規則 隱晦規則 變數定義 檔案指示和注釋。顯式規則。顯式規則說明了,如何生成乙個或多的的目標檔案。這是由makefile的書寫者明顯指出,要生成的檔案,檔案的依賴檔案,生成的命令。隱晦規則。由於我們的make有自動推導的功能,所以隱晦的規則可以讓我們比較粗糙...
makefile的一些筆記
0.makefile檔案可以命名為 makefile makefile 0.1 makefile的格式 targets prerequisites command 1.makefile 的命令一定要用 tab 鍵 2.在命令和非命令行前加 代表如果這裡出錯忽略,比如 include foo.make...
eslint 的一些規則
parenthese 圓括號 curly brace 花括號 comma 逗號 semicolon 分號 函式體中沒有花括號引數就不要有圓括號 物件中值必須要用單引號 定義但是沒有被使用,一般是可以被刪除的。有一種情況就是屬性驗證。proptypes沒有被使用,但是需要自己寫屬性驗證,所以就會被用上...