我很陌生,我试图创建一个虚假目标来打印目标:
.PHONY: help
help:
$(MAKE) --print-data-base --question | \
$(AWK) '/^[^.%][-A-Za-z0-9_]*:/ { print substr($$1, 1, length($$1)-1) }' | \
$(SORT) | \
$(PR) --omit-pagination --width=80 --columns=4
代码取自here(第20页)。
当我运行make help
时,我得到以下内容:
make --print-data-base --question | \
'/^[^.%][-A-Za-z0-9_]*:/ { print substr($1, 1, length($1)-1) }' | \
| \
--omit-pagination --width=80 --columns=4
/bin/sh: 3: Syntax error: "|" unexpected
make: *** [help] Error 2
出了什么问题,如何解决?
我正在研究linux mint,为i686-pc-linux-gnu制作3.81。
答案 0 :(得分:1)
看起来$(AWK)
,$(SORT)
和$(PR)
都在扩展为空字符串,这意味着您的makefile中没有定义此类变量。