Utilisez rm -f
(ou encore mieux $(RM)
, fourni par make
intégré règles, qui peuvent être trouvées en utilisant make -p
) au lieu de rm
dans votre clean
règle.
Lorsque les cibles échouent
Lorsqu'une cible est exécutée, elle renvoie un statut selon qu'elle a réussi ou non -- si une cible échoue, alors make n'exécutera aucune cible qui en dépend. Par exemple, dans l'exemple ci-dessus, si "clean" échoue, la reconstruction n'exécutera pas la cible "build". Malheureusement, cela peut arriver s'il n'y a pas de fichier principal à supprimer. Heureusement, ce problème peut être résolu assez facilement en incluant signe moins devant la commande dont l'état doit être ignoré :
clean: -rm -f *.o core
~ http://www.cprogramming.com/tutorial/makefiles.html
rm -f
forcera et ne produira aucune erreur