Форум программистов, компьютерный форум, киберфорум
С под Linux
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/8: Рейтинг темы: голосов - 8, средняя оценка - 4.75
0 / 0 / 0
Регистрация: 23.08.2015
Сообщений: 36
1

Как заставить make продолжать выполнения после failed recipe?

07.12.2018, 23:37. Показов 1534. Ответов 2
Метки make (Все метки)

Я знаю о замене rm соответствующей встроенной переменной $(RM), но мне нужно универсальное решение типа '-' префикса перед командой. Да, я о нём прочитал, и он должен мне вроде бы подойти, но проблема в том, что он не работает. Вообще. Make продолжает фейлиться на любой команде, даже если перед ней стоит -. Как это можно объяснить, и как решить поставленную задачу?

Мой makefile:

clean:
-rm *.o

(Вместо rm юзаю ещё и свои проги, поэтому проблема встроенными переменными не решилась.

Добавлено через 20 минут
ftp://ftp.gnu.org/old-gnu/Manu... ake_5.html
Errors in commands:
To ignore errors in a command line, write a `-' at the beginning of the line's text (after the initial tab). The `-' is discarded before the command is passed to the shell for execution.
For example,
clean:
-rm -f *.o

Спасибо, только вот сам -f отключает ошибки, а не '-'. просто '-' не работает. Почему?

clean:
-rm *.o

(gdb) make clean
rm *.o
rm: cannot remove '*.o': No such file or directory
makefile:13: recipe for target 'clean' failed
make: [clean] Error 1 (ignored)
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
07.12.2018, 23:37
Ответы с готовыми решениями:

Recipe for target 'main.o' failed
Помогите разобраться где косяк Atmel Studio 7 выдает сообщения (из 18 ошибок остались 2) , в том...

Recipe for target '.' failed - Qt+Android
Здравствуйте. Не запускается проект Qt. Проект создан по умолчанию. В версии Qt 5.7 выводит: copy...

CodeLite/MinGW - ошибка компиляции: recipe for target 'all' failed?
Установил CodeLite и компилятор MinGW. При попытке скомпилировать простейшую программу 'hello...

Как заставить макрос после выполнения переходить на следующую ячейку
Имееться макрос для полученя веса GetStaticWeight. после выполнения он записывает в ячейку А1 вес....

2
918 / 635 / 198
Регистрация: 08.09.2013
Сообщений: 1,690
08.12.2018, 12:16 2
Лучший ответ Сообщение было отмечено banbezv1999 как решение

Решение

Цитата Сообщение от banbezv1999 Посмотреть сообщение
просто '-' не работает. Почему?
Вам же написали, что ошибка проигнорирована. Если у цели есть другие команды, то они продолжат выполняться.
0
0 / 0 / 0
Регистрация: 23.08.2015
Сообщений: 36
09.12.2018, 23:29  [ТС] 3
Боже, это сильный фэил. Спасибо.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.12.2018, 23:29

При запуске Makefile выдается ошибка "Makefile:2: recipe for target 'all' failed"
решила поучиться собирать проекты через мэйкфайлы. Пожалуйста, помогите разобраться all:...

Ошибка "Debug Assertion Failed" после выполнения программы
Перешарив весь интернет поняла, что данная ошибка весьма индивидуальна. Посему прошу помочь знающих...

Как подождать завершения нескольких потоков, и если после минуты не завершились продолжать выполнение?
Как подождать завершения нескольких потоков, и если после минуты не завершились продолжать...

Как заставить Builder 6 показывать результат выполнения программы?
У меня C++ Builder 6. Написал простую программу, например "Hello, Word!", нажимаю Run (F9). Пишет,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.