Я пытаюсь создать Makefile, который использует рецепт, созданный с использованием синтаксиса define.Однако я столкнулся с проблемой, когда Make считает, что к последнему предварительному условию добавлена новая строка, что приводит к ошибке «правило не найдено».Ниже приведен минимальный рабочий пример, проблема вызывается попыткой сделать цель foo / bar.
foo:
mkdir foo
define FIZZ
foo/bar: foo
touch foo/bar
endef
$(call FIZZ)
Точное сообщение об ошибке:
make: *** No rule to make target 'foo
', needed by 'foo/bar'. Stop.
Я пробовал версии 4.1и 4.2.1 из GNU Make.Может кто-нибудь сказать мне, что я делаю неправильно (или это ошибка)?