先说一下背景。
我在pro文件中定义了一个变量,这个变量,pro文件要用,compile.cpp文件也要用。
我就通过DEFINES将这个变量以宏的形式传递给compile.cpp。
但是这样出现了一个问题,每次当我修改pro文件中变量的值的时候,compile.cpp并没有重新编译,导致c++中得到的变量值并不是最新的。
我的需求就是,每当pro文件发生修改时,自动重新编译compile.cpp。
我的思路是,在pro中定义一条依赖关系,让compile.o依赖pro文件,这样就可以解决问题。
实际代码:
- Compile.target=$(OBJECTS_DIR)/compile.o
- Compile.depends=$$_PRO_FILE_
- QMAKE_EXTRA_TARGETS+=Compile
全文完。