[linux] Makefile에서? =는 무엇입니까?

KDIR ?= $(shell uname -r)

의 의미는 ?=무엇입니까?

:=, +==Stack Overflow에서 사용할 수있는 다른 스레드 의 차이점을 이해 했지만에 대한 설명을 찾을 수 없습니다 ?=.



답변

?=KDIR변수 가 설정 되지 않았거나 값이없는 경우에만 변수 를 설정하도록 나타냅니다 .

예를 들면 :

KDIR ?= "foo"
KDIR ?= "bar"

test:
    echo $(KDIR)

“foo”를 인쇄합니다.

GNU 매뉴얼 : http://www.gnu.org/software/make/manual/html_node/Setting.html


답변

빠르고 정확한 응답을 해준 Simon과 RT에게 감사드립니다.

또한 모든 것을 자세히 설명하는 GNU 매뉴얼을 찾았습니다 :
http://www.gnu.org/software/make/manual/html_node/Setting.html


답변