Перейти к содержимому

CMake

ПриложениеKitware

Также называется cmake gui, kitware cmake

KitwareПродуктивность

Генератор файлов сборки от Kitware. cmake.exe создает файлы Visual Studio или Ninja. Он не заменяет MSVC или rustc.

Что необходимо знать

CMake генерирует файлы сборки. Это не компилятор.

cmake.exe от Kitware создает файлы проектов для Visual Studio, Ninja и других. cl.exe и link.exe по-прежнему входят в состав MSVC. rustc и go относятся к другим языкам. Установка CMake не устанавливает Visual Studio.

Что это такое?
Генератор файлов сборки
Является ли компилятором?
Нет. Вам по-прежнему нужен MSVC или аналогичный инструмент
Заменяет Visual Studio?
Нет. Он может сгенерировать .sln
Feex сообщает
Если cmake.exe выполняет конфигурацию, но компиляция завершается сбоем, я бы обратил внимание на генератор и найденный им компилятор. Не следует воспринимать CMake как MSVC. Генератор - это не тулчейн.

Что такое CMake?

CMake - это метасистема сборки. Она генерирует решения Visual Studio, файлы Ninja и другие. Это не cl.exe, не rustc и не сам MSBuild.

Если вы никогда им не пользовались

Если в README для C++ указано установить CMake, загрузите его с cmake.org/download. cmake.exe генерирует файлы сборки. Это не компилятор. Вам все еще нужен MSVC, Ninja или другой тулчейн. rustc.exe и go.exe относятся к другим языкам. CMake не заменит devenv.exe.

Для чего он используется?

Создать решение Visual Studio

cmake -G "Visual Studio 17 2022". Затем devenv.exe открывает этот .sln. CMake еще не выполнил его компиляцию.

Ninja и другие генераторы

Ninja вместе с MSVC или GCC. У cargo и go есть собственные графы сборки.

Пресеты

CMakePresets.json в современных проектах. Этот файл не является исполняемым файлом компилятора.

Для кого он предназначен?

  • Разработчикам на C и C++, чей репозиторий начинается с CMakeLists.txt
  • Тем, кто установил CMake и удивился отсутствию cl.exe
  • Всем, кто считал, что CMake заменяет Visual Studio

Текущий статус

CMake (2000) - это актуальный генератор сборок от Kitware. Поставщик по-прежнему направляет пользователей Windows на https://cmake.org/download/.

Сколько ему лет?

Kitware выпустила CMake в 2000 году для больших деревьев C++. Он старше Rust и Go. Актуальные выпуски 3.x/4.x представляют собой основной продукт. Руководство, рассчитанное только на 2.8, может не содержать современных пресетов.

Версии

Сначала основные каналы. Точные номера сборок здесь не верифицируются.

cmake.exe
cmake-gui.exe

Системные требования

Значения соответствуют общедоступным рекомендациям издателя. Нагрузка все же меняет реальные потребности.

Минимум

Минимальные системные требования
Операционная система Актуальный 64-разрядный выпуск Windows 10 или Windows 11, согласно Kitware
Оперативная память Генератор компактен. Запускаемая им компиляция является ресурсоемким этапом

Потребление ресурсов

Нагрузка на CPU
Зависит от того, что именно открыто внутри приложения
Нагрузка на RAM
Зависит от документов, вкладок или библиотек

Установленные процессы

Эти исполняемые файлы принадлежат данному продукту, когда он установлен.

Установленные процессы
cmake.exe Генератор командной строки CMake
cmake-gui.exe Необязательный графический интерфейс CMake

Компоненты автозагрузки

CMake не запускается вместе с Windows. Вы запускаете его в папке сборки.

Расположение файлов

Типичные расположения CMake
Типичная установка C:\Program Files\CMake\

Форматы файлов

CMakeLists.txtCMakePresets.json

Распространенные проблемы

Конфигурация успешна, компиляция завершается сбоем

CMake нашел генератор. Компилятор или SDK все еще отсутствуют. Это проблема MSVC или Windows SDK.

Неверный генератор для установленной версии VS

Для "Visual Studio 17 2022" требуется VS 2022. CMake не может создать devenv.exe сам по себе.

Устранение проблем

cmake --version и where.exe cmake

Ожидается Program Files\CMake\bin. Случайный cmake.exe в venv - совсем другое дело.

Устанавливайте с cmake.org/download

Kitware размещает установщик MSI. Пакет CMake в комплекте со случайным архивом компилятора - это мусор.

Установите Visual Studio или Build Tools, если вам нужен MSVC

Visual Studio Installer добавляет cl.exe. После этого CMake обнаружит его.

Альтернативы

Meson и Bazel - это другие метасистемы сборки. MSBuild часто является целевой системой для генератора VS. CMake по-прежнему остается стандартной отправной точкой для C++.

Официальная помощь и загрузки

Начинайте с сайта разработчика. Случайные сайты с файлами exe не являются каналами поддержки.

Официальные контакты
Скачать cmake.org/download/ Официальный установщик или страница разработчика
Помощь cmake.org/documentation/ Поддержка разработчика
Официальный сайт cmake.org/ Начинайте отсюда, а не со случайных сайтов с файлами exe
Документация CMake cmake.org/cmake/help/latest/ Команды и генераторы

Сопутствующее оборудование

Конфигурация потребляет мало ресурсов. Для создаваемой компиляции требуются процессор и оперативная память.

Технические подробности

Технические подробности

Номера версий у разработчика меняются. В этой статье конкретная сборка не фиксируется.

Источники и проверка

Метка зарегистрированного источника: август 2026. Эта метка не гарантирует независимую проверку. Как мы проводим исследования.

Была ли эта статья полезна?

Достаточно ответа "да" или "нет". При желании выберите причину или оставьте короткую заметку.

Была ли эта статья полезна?