*** Нет правил для создания цели, ошибка Makefile в Win10

Прежде всего, пожалуйста, не говорите мне, что это дубликат. Я знаю, но на многие вопросы, которые я просмотрел, были даны слишком конкретные ответы, чтобы помочь мне, и, откровенно говоря, половина из них прошла через мою голову. Я очень новичок в использовании Makefiles, и я озадачен тем, почему мой не работает.

Я уверен, что это что-то до боли простое, но, пожалуйста, помогите, если вам понадобится дополнительная информация, я буду рад попытаться ее найти и потерпеть, потому что я делаю все это со своего телефона, потому что ИТ-отдел моего университета управляется обезьянами. В настоящее время это мой Makefile:

Makefile для назначения 1

finish : main.o 
    g++ -o finish main.o

main.o :    
    g++ -c -g -Wall main.cpp

clean :       
    del main.o

(Извините, это не сотрудничество, я хочу прояснить, что перед командами есть необходимая вкладка)

Я запускаю это на Windows 10, используя компилятор GNU. Из того, что я вижу, он выглядит точно так же, как пример файла Makefile, который мы предоставили, кроме имен файлов. Я знаю, что я нахожусь в правильном каталоге, ничего не написано с ошибкой, исходный файл должен существовать, потому что я смотрю на него, сидя рядом с make-файлом. Это общие исправления, которые я помню. Команда main.o отлично работает и компилирует исходный файл, но две другие просто дают мне ошибку

make: *** Нет правила, чтобы сделать цель "закончить / очистить". Стоп.

Я смущен, раздражен, плохо знаком с Makefiles и Stack Overflow и просто ищу руку помощи. Любой совет будет принята с благодарностью.

1 ответ

Я вставляю свой пример:

      CC = g++
CFLAGS = -g
test.o: test.cpp
    $(CC) $(CFLAGS) -c test.cpp
last.o: last.cpp
    $(CC) $(CFLAGS) -c last.cpp
program: test.o last.o
    $(CC) $(CFLAGS) -o program test.o last.o 
clean: 
    $(RM) test.o last.o

Я столкнулся с похожей проблемой. Попробуйте использовать $(RM) вместо "del"

Другие вопросы по тегам