Задать вопрос
@DVoropaev
Ставлю + к карме на хабре за ответы на вопросы

Как сделать, чтобы make не ругался, если файлов нет?

Сделал вот такой makefile, прописал цель "clean":
# .PHONY: all clean
all: hello.o main.o
	gcc -o hello main.o hello.o
hello.o: hello.c
	gcc -o hello.o -c hello.c
main.o: main.c
	gcc -o main.o -c main.c
clean:
	-rm ./*.o 2>/dev/null

Но он ругается, если нет файлов для удаления:
$ make all
gcc -o hello.o -c hello.c
gcc -o main.o -c main.c
gcc -o hello main.o hello.o

$ make clean
rm ./*.o 2>/dev/null

$ make clean
rm ./*.o 2>/dev/null
makefile:9: recipe for target 'clean' failed
make: [clean] Error 1 (игнорирование)
  • Вопрос задан
  • 45 просмотров
Подписаться 1 Простой 1 комментарий
Решения вопроса 1
@rustler2000
погромист сикраш
Не make ругается а rm
Добавь -f к rm и все будет ок
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы