デフォルトのqmakeコンパイラを(SOURCES
変数を介して)使用する場合、次のようにプリコンパイル済みヘッダーを使用できます。
CONFIG += precompile_header
PRECOMPILED_HEADER = stable.h
SOURCES = main.c
ただし、カスタム コンパイラを (経由で) 使用したいと思いQMAKE_EXTRA_COMPILERS
ます。私はこれを試しました:
CONFIG += precompile_header
PRECOMPILED_HEADER = stable.h
MY_SOURCES = main.c
my.input = MY_SOURCES
my.output = ${QMAKE_FILE_IN_BASE}.o
my.commands = clang $$QMAKE_CFLAGS_USE_PRECOMPILE -c ${QMAKE_FILE_IN} -o ${QMAKE_FILE_OUT}
QMAKE_EXTRA_COMPILERS += my
QMAKE_CFLAGS_USE_PRECOMPILE
...そして、プリコンパイル済みヘッダーがビルドされますが、プリコンパイル済みヘッダーへのパスが含まれていないため、カスタム コンパイラが失敗します。( として定義されて-Xclang -include-pch -Xclang ${QMAKE_PCH_OUTPUT}
おり、明らか${QMAKE_PCH_OUTPUT}
に空です。)
生成されたプリコンパイル済みヘッダーの名前を取得して、カスタム コンパイラにパラメーターとして渡すにはどうすればよいですか?