我有一个多平台的CMake项目,有时我不得不为Windows手动构建它。我生成了一个这样的构建系统:
cmake -DCMAKE_BUILD_TYPE=Release -G"Visual Studio 16 2019" -A x64 ../path/to/source
然后我打开*sln
文件,然后按F7键进行构建。它运行了40分钟,此后,我了解到我没有在组合框中选择正确的配置。这很烦人!当命令行选项为-DCMAKE_BUILD_TYPE=Release
,但组合框设置为Debug
时,花费大量时间后构建失败。
是否可以通过命令行选择生成配置来生成MSVS项目?
请注意,我知道msbuild
命令,它是-p:Configuration=xxxxx
标志。问题是关于出于某些原因需要从Visual Studio的GUI进行构建的情况。
答案 0 :(得分:1)
目前无法使用CMake更改GUI的选定配置。
主要原因是此信息存储在Visual Studio生成的.suo
文件中。 CMake本身仅生成项目和解决方案文件,而.suo
文件将由Visual Studio本身生成。
或者,为此使用CMake的command line build option。配置项目并照常从CMake生成VS .sln
文件后,只需运行:
cmake --build <path_to_build_directory> --config Release
这与选定的生成器无关,并且是构建CMake项目的最可靠方法。