Выберите конфигурацию сборки MSVS при создании системы сборки с CMake - PullRequest
1 голос
/ 24 марта 2020

У меня есть мультиплатформенный проект 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.

1 Ответ

1 голос
/ 24 марта 2020

Изменение выбранной конфигурации для GUI невозможно с CMake в данный момент.

Основная причина этого заключается в том, что эта информация хранится в файле .suo, созданном Visual Studio. Сам CMake генерирует только файлы проекта и решения, в то время как файл .suo будет создаваться самой Visual Studio.

В качестве альтернативы используйте для этого параметр сборки командной строки CMake . После настройки вашего проекта и генерации файла VS .sln из CMake, как обычно, просто запустите:

cmake --build <path_to_build_directory> --config Release

Это работает независимо от выбранного генератора и является наиболее надежным способом построения проектов CMake.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...