私たちのプロジェクトでは、MACRO が定義されている場合、いくつかのソース ファイルとヘッダー ファイルを追加しました。これを .pro ファイルで次のように行います。
contains(DEFINES, MY_DEF) {
message("Support MY_DEF")
INCLUDEPATH += \
my_include_dir
SOURCES += \
source1.cpp \
source2.cpp
HEADERS += \
my_include_dir/header1.h \
my_include_dir/header2.h
FORMS += \
myform.ui
}
これは、ビルド中に正常に機能します。MY_DEF が定義されていない場合、ファイルはコンパイルされません。MY_DEF は次のように定義されています。
DEFINES += MY_DEF
興味深いことに、MY_DEF が定義されているかどうかに関係なく、Qt Creator は常にプロジェクト ツリーにファイルを表示します。定義されていない場合、ビルドには使用されませんが、表示および編集可能であり、検索でスキャンできます... Qt Creator のバグですか?
ファイルがプロジェクトの一部であるかどうかは明確にわからないため、これは大きな問題ではありません。