가 여기 내 메이크의 단순화 된 버전의 부모를 무효화하지 않습니다 위에서 언급 한메이크 : 규칙이없는 종속성
all: myprogram
myprogram: main.o
c++ main.o -o myprogram
main.o: main.cpp mylib.hpp
c++ -c main.cpp
mylib.hpp: mylib.inl
이러한 모든 파일은 실제 파일입니다. mylib.hpp
을 변경하면 main.cpp
가 다시 컴파일됩니다. 그러나, 내 문제는 내가 mylib.inl
을 변경하면 이 아닌가 재 컴파일된다는 것입니다. mylib.inl
을 편집 할 때 main.o
대상을 무효화하려면 어떻게해야합니까? myprogram
대상을 무효화하려면 어떻게해야합니까? 내가 mylib.inl
을 편집 할 때마다 매번 모든 것을 다시 컴파일하고 싶지 않기 때문에 이이 아닌 .PHONY
대상을 사용하는 것이 더 낫습니다.
mylib.hpp: mylib.inl
실제 의존성을 설명하지 않습니다
흠 아마도 mylib.hpp를 터치하거나'main.o : main.cpp mylib.hpp mylib.inl'에'mylib.hpp'을 입력하십시오. – chux