切換
舊版
前往
大廳
主題

Makefile筆記

NEKROS | 2023-04-07 23:09:07 | 巴幣 0 | 人氣 88

$(wildcard PATTERN...) e.g. source = $(wildcard *.p4)

notdir:移除路徑 e.g. nodir=$(notdir $(source))

patsubst:替換wildcard e.g. obj=$(patsubst %.c,%.o,$(dir) ) #將.c副檔名替換為.o副檔名
#也可使用$(var:.c=.o) 或 ${var:.c=.o}

在shell command前面加@可使terminal不會print command的內容,如@echo "test echo"便只會輸出test echo

$@代表target本身,$<代表第一個dependency

:=有點類似於ifndef,若lvalue未被賦予值則將其設為rvalue e.g. UP_CC := g++

創作回應

更多創作