나는이 문제가 상당히 흔한 문제라고 생각하지만, 필자의 구체적인 상황에서는 그 답을 찾을 수 없다.Makefile 대상이 만족스럽지 않음
initfs.tar: $(INITFS_FILES)
rm -f ./initfs.tar
cd initfs_root
tar --format ustar --exclude-vcs -cf ../initfs.tar ./
INITFS_FILES가 정의 :
INITFS_FILES:=$(shell find ./initfs_root/ -not -path '*/.*/*' -not -name '.*' -type f)
내가 make initfs.tar
호출 할 때마다,이 대상이 실행될 때 나는 대상과 같이 있습니다. initfs_root 디렉토리에서 파일을 수정하지 않습니다 (그리고 find 명령을 사용하여 모든 파일을 찾습니다). 실제로 initfs.tar가 생성됩니다.
왜 이런 일이 일어나는 지 아는 사람이 있습니까? 나에게, 그리고 인터넷과 현재의 전문성에 관해서 만난 다른 모든 글에 따르면 나는 정확한 것을 가지고있다. (분명히, 나의 전문 기술은 Makefile 영역에서 부족하다.)
'INITFS_FILES' 변수의 내용은 무엇입니까? – sarnold
'INITFS_FILES'리스트에있는 어떤 파일도 나중에 어떻게 든 미친 마지막 수정 시간이 있다고 가정하지 않습니까? –
@sarnold "binary-file test.txt"를 보유하고 있습니다. – Caleb1994