我使用cmake命令QT4_WRAP_UI。是否有控制生成的头文件的输出路径的选项?
答案 0 :(得分:5)
以下是QT4_WRAP_UI
源代码:
MACRO (QT4_WRAP_UI outfiles )
QT4_EXTRACT_OPTIONS(ui_files ui_options ${ARGN})
FOREACH (it ${ui_files})
GET_FILENAME_COMPONENT(outfile ${it} NAME_WE)
GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE)
SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/ui_${outfile}.h) # Here we set output
ADD_CUSTOM_COMMAND(OUTPUT ${outfile}
COMMAND ${QT_UIC_EXECUTABLE}
ARGS ${ui_options} -o ${outfile} ${infile}
MAIN_DEPENDENCY ${infile})
SET(${outfiles} ${${outfiles}} ${outfile})
ENDFOREACH (it)
ENDMACRO (QT4_WRAP_UI)
如您所见,outfile
变量是从CMAKE_CURRENT_BINARY_DIR
变量构建的。您可以创建一个将替换该行的自定义宏。
答案 1 :(得分:3)
我必须找到解决方案。我确实创建了一个自定义宏,但我认为如果cmake上游的宏可以自动处理它会更好。
查看我的提案here
答案 2 :(得分:-2)
您只需将${CMAKE_CURRENT_BINARY_DIR}
添加到include dir:
include_directories(${CMAKE_CURRENT_BINARY_DIR})