我目前正在尝试将用于 QT 项目的构建系统从 Visual Studio 更改为 CMake,但我无法弄清楚 qt_wrap_ui 命令的正确用法。目前,我正在这样使用它:
macro(addQtForProject argLibraryName argSourceList)
...
qt_wrap_ui(${argLibraryName} ${argSourceList} ${argSourceList} ${varUiList})
endmacro()
当我将源和标头作为单个列表处理时,我当然希望生成的文件最终出现在同一个列表中。varUiList 包含项目使用的四个 .ui 文件。
当使用带有此宏的 CMakes Visual Studio 2005 生成器时,它会在 Visual Studio 项目文件中添加四个 .h 文件,每个 .ui 文件一个,但这些文件本身似乎确实存在,所以我一定做错了什么。不幸的是, CMakes文档在这个主题上相当稀疏。这已经用 CMake 2.8.10 进行了测试。