1

Я заинтересован в использовании GNU Make на Windows. Я создал крошечный Makefile, используя шаблонное правило:

all: abcd.o

%.o : %.c
    echo hi

Тем не менее, когда я пытаюсь сделать все,

D:\test>"C:\Program Files (x86)\GnuWin32\bin\make" -f Makefile.txt
make: *** No rule to make target `abcd.o', needed by `all'.  Stop.

Я устанавливаю GNU Make из этого репозитория. Документация, которую я нашел, описывает, что этот Makefile должен работать.

D:\test>"C:\Program Files (x86)\GnuWin32\bin\make" --version
GNU Make 3.81

Как я могу использовать шаблонные правила в GNU Makefiles в Windows?

2 ответа2

1

make: *** Нет правила для создания цели abcd.o', needed by всем'. Стоп.

Ваш make-файл содержит:

all: abcd.o

%.o : %.c
    echo hi

Это будет работать, только если файл abcd.c существует или может быть создан (по другому правилу).


Таким образом, правило вида

%.o : %.c ; recipe…

указывает, как сделать файл no, с другим файлом nc в качестве предварительного условия, при условии, что nc существует или может быть создан.

Источник 10.5.1. Введение в шаблонные правила.


дальнейшее чтение

-1

Файл abcd.c должен существовать.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .