CMake

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
CMake
Логотип программы CMake
Скриншот программы CMake
Тип Автоматизация сборки и свободное и открытое программное обеспечение
Автор Kitware Inc.[d]
Разработчики Andy Cedilnik, Bill Hoffman, Brad King, Ken Martin, Alexander Neundorf
Написана на C++ и Си[4]
Интерфейс Qt
Операционная система UNIX-подобные операционные системы, Microsoft Windows, macOS, Debian и Ubuntu
Первый выпуск 2000
Аппаратная платформа кроссплатформенность
Последняя версия
Кандидат в релизы
Лицензия модифицированная лицензия BSD[d][5][6]
Сайт cmake.org​ (англ.)
Логотип Викисклада Медиафайлы на Викискладе

CMake (от англ. cross-platform make) — это кроссплатформенная система автоматизации сборки программного обеспечения из исходного кода. CMake не занимается непосредственно сборкой, а лишь генерирует файлы управления сборкой из файлов CMakeLists.txt:

  • Makefile в системах Unix для сборки с помощью make;
  • файлы projects/solutions (.vcxproj/.vcproj/.sln) в Windows для сборки с помощью Visual C++;
  • проекты XCode в Mac OS X.

Считается альтернативой распространённой в сообществе GNU системе Autotools, разработанной на базе Perl и M4, которая требует определённых навыков для практического использования, а существующие версии в ряде случаев несовместимы друг с другом.

В сравнении с другой альтернативой Autotools — появившейся в 2008 году системой SCons на Python — является более быстродействующей, поскольку написана на Си и использует крайне простой макроязык, но при этом SCons обладает большими возможностями по расширению. Многие известные свободные проекты (например, Blender, Wesnoth) только начали переход от Autotools к SCons и CMake, и ещё не приняли однозначного решения в пользу SCons или CMake.

CPack[править | править код]

Начиная с версии 2.4.2[7], в состав CMake включены система автоматизированной сборки пакетов программного обеспечения CPack и модуль CMake для взаимодействия с ней. Система позволяет создавать пакеты программного обеспечения для популярных пакетных менеджеров (DEB, RPM, DMG), средства установки программного обеспечения (NSIS для Microsoft Windows), а также архивы со сборкой (TGZ, TBZ2, ZIP, самораспаковывающийся TGZ)[8].

Примечания[править | править код]

Ссылки[править | править код]