Начальная настройка CMake проекта

Я начал изучать CMake несколько дней назад, но максимум что я смог ( и понял как ) сделать - это однофайловый проект Hello, World! Я работал исключительно с обыкновенными проектами в Visual Studio до этого момента. Мой вопрос состоит в том, как правильно настроить CMake проект в самой IDE?

Как мне из подобного вида:

Сделать адекватный, разложенный по полочкам проект, где не используются фильтры, а создаются папки: введите сюда описание изображения

Мне вовсе неудобно/непривычно использовать CMake инструмент и даже ясно для вас я объяснить врядли смог


Ответы (1 шт):

Автор решения: Ygrik
  1. Если вы хотите использовать CMake в VisualStudio, то правильно написав CMakeLists.txt, и используя правильный генератор для CMake (подробнее тут), можно сгенерировать проект VS прямо из CMake.
  2. Если Вам нужна сортировка папок, то в CMake каждому таргету нужно присвоить свойство через set_target_properties (подробнее тут):
    set_target_properties(MyTarget PROPERTIES FOLDER "Utilities")
    
    предварительно, в верхнеуровневом CMakeLists.txt прописав:
    set_property(GLOBAL PROPERTY USE_FOLDERS ON)
    
  3. Еще полезной может быть вот эта страничка про source_group

Итого что получаем

Когда мы полностью написали CMakeLists.txt, то открываем консоль разработчика VS, переходим в рабочую папку и генерируем проект:

cd D:/path/to/workdir
cmake . -G "Visual Studio 17 2022" -B .build
cd .build
dir

И теперь в списке сгенерированных файлов мы можем найти файл проекта для Visual Studio, который открывается как и любой другой проект VS.

Если говорить про разработку на Linux, то Visual Studio умеет работать с WSL (Windows Subsystem Linux) и можно девелопить с CMake и под Linux на Windows.

→ Ссылка