Debugging 如何在目标之外的makefile中打印文本?
例如,我尝试在我的makefile序言中测试这是否有效:Debugging 如何在目标之外的makefile中打印文本?,debugging,makefile,printf,Debugging,Makefile,Printf,例如,我尝试在我的makefile序言中测试这是否有效: ifneq(,$(shell latexmk--version 2>/dev/null)) 回声工程 其他的 回声不起作用 恩迪夫 全部: 做事。。。 以下哪项会导致错误: *** recipe commences before first target. Stop. 那么,如何打印规则之外的内容呢 Makefile不允许在规则之外或在结果=$(shell…之外的命令,在我发现这个问题之后 我认为这是可行的: ifneq (,$(s
ifneq(,$(shell latexmk--version 2>/dev/null))
回声工程
其他的
回声不起作用
恩迪夫
全部:
做事。。。
以下哪项会导致错误:
*** recipe commences before first target. Stop.
那么,如何打印规则之外的内容呢
Makefile不允许在规则之外或在
结果=$(shell…
之外的命令,在我发现这个问题之后
我认为这是可行的:
ifneq (,$(shell latexmk --version 2>/dev/null))
useless := $(shell echo Works 1>&2)
else
useless := $(shell echo Does not Works 1>&2)
useless := $(error exiting...)
endif
all:
echo Hey sister, do you still believe in love I wonder...
奖金:
我发现这个问题以后, 我认为这是可行的:
ifneq (,$(shell latexmk --version 2>/dev/null))
useless := $(shell echo Works 1>&2)
else
useless := $(shell echo Does not Works 1>&2)
useless := $(error exiting...)
endif
all:
echo Hey sister, do you still believe in love I wonder...
奖金:
GNU Make中有
$(信息…
,$(警告…
和$(错误…
内置函数。请注意,从语法上讲,它们是文本替换,但它们的返回值始终是空字符串(除了永不返回的$(error…
),就像$(eval…
等一样。因此它们几乎可以在任何地方使用
另一个选项是
$(文件>/dev/stdout…)
(在Windows下使用“con”)。在GNU Make中有$(信息…
,$(警告…
和$(错误…
内置函数。请注意,从语法上讲,它们是文本替换,但它们的返回值始终是空字符串(除了永不返回的$(error…
),就像$(eval…
等一样。因此它们几乎可以在任何地方使用
另一个选项是$(文件>/dev/stdout,…)
(在Windows下使用“con”)