"make cleanlists"라는 단일 대상을 실행하려고합니다. 이 목표에는 전제 조건이 없으므로 다른 규칙을 건드리지 않고 즉각적으로 실행해야합니다. 특정 대상을 실행하도록 GNU make를 강제 실행합니다.
.PHONY: cleanlists
cleanlists:
@echo cleaning source and header lists ..
@rm -f sourcelist.mk
@rm -f headerlist.mk
@echo done.
그러나 경우에
은, 그 두 개의 파일이 존재하지 않는 것을 전제 조건으로 해당 파일을 가진 다른 규칙을 확인하고 마지막으로 'cleanlists'목표를 실행하기 전에 이들의 재생을 초래할 수 있습니다.이 동작을 피하기 위해 make를 강제하는 간단한 방법이 있습니까?
감사
모르겠다. "청결자를 만들라는 것"이 그 파일을 없애지 않는다는 말입니까? –
아니요, make는 파일을 삭제하기 전에 먼저 파일을 만듭니다 (make를 호출 할 때 존재하지 않는 경우). – rainer
매우 이상합니다. 작은 크기 인 경우 전체 메이크 파일을 게시 할 수 있습니까? 또는 크기가 큰 경우 게시하기에 충분히 작거나 갑자기 문제가 사라질 때까지 부품을 제거하십시오 (큰 단서를 줄 수 있음). – Beta