Qt 条件文件包含在 .pro 中

Qt conditional file includes in .pro

我在通过“.pro”文件包含文件时遇到问题。 如果 ARCH 等于“64bit”,这是我系统的一个环境变量,我将在我的项目中包含一个 'function1.h'。 否则,包括 'function2.h'

但只有一条消息正常工作,并且两个文件都包含在一起。 我的意思是,我只能看到一个项目消息说 "Hello 64-bit" ,但我可以在我的项目文件列表中看到两个文件。 function1.h 和 function2.h.

有什么问题,我该如何解决

这是我的代码

QT += quick
CONFIG += c++11

SOURCES += main.cpp

OS_IS = $$(ARCH)

equals(OS_IS,64bit){
    message("Hello 64-bit")
    HEADERS += function1.h
}else{
    message("Hello 32-bit")
    HEADERS += function2.h
}

...

提前致谢

我想你的问题一定出在其他地方。这符合我的预期:

OS_IS = $$(ARCH)

message("Headers before:" $$HEADERS)

equals(OS_IS,"64bit"){
    message("Hello 64-bit")
    HEADERS += function1.h
}else{
    message("Hello 32-bit")
    HEADERS += function2.h
}

message("Headers after:" $$HEADERS)