がここに私のMakefileの簡易版の親が無効になるわけではない:上記のMakefile:ルールなしの依存関係が
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
を変更すると、main.cppはでなく、が再コンパイルされるということです。 mylib.inl
を編集するときに、main.o
ターゲットを無効にするにはどうすればmyprogram
ターゲットを無効にできますか? ではなくに.PHONY
ターゲットを使用することをお勧めします。毎回すべてを再コンパイルしないため、mylib.inl
を編集するときだけです。
おそらく、おそらくmylib.hppに触れるか、 'main.o:main.cpp mylib.hpp mylib.inl'に' mylib.hpp'を入れてください。 – chux