CMake | это... Что такое CMake? (original) (raw)
CMake
Тип | Инструментальное программное обеспечение |
Автор | Kitware, Inc. |
Разработчики | Andy Cedilnik, Bill Hoffman, Brad King, Ken Martin, Alexander Neundorf |
Написана на | C, C++ |
Операционная система | Кроссплатформенное программное обеспечение |
Последняя версия | 2.8.10 (7 ноября 2012) |
Состояние | активное |
Лицензия | BSD |
Сайт | www.cmake.org |
CMake (от англ. cross platform make) — это кроссплатформенная система автоматизации сборки программного обеспечения из исходного кода. CMake не занимается непосредственно сборкой, a лишь генерирует файлы управления сборкой из файлов CMakeLists.txt:
- Makefile в системах Unix для сборки с помощью make;
- файлы projects/workspaces (.dsp/.dsw) в Windows для сборки с помощью Visual C++;
- проекты XCode в Mac OS X
Содержание
- 1 Сравнение Autotools, Scons и CMake
- 2 Программное обеспечение, использующее CMake
- 3 См. также
- 4 Ссылки
Сравнение Autotools, Scons и CMake
Достаточно давно разработанная в сообществе GNU система Autotools на базе Perl и M4 является широко распространённой, но требует определённых навыков для практического использования. Существующие версии в ряде случаев несовместимы друг с другом. Autotools реализована для Unix/Linux платформ.
21 декабря 2008 года появилась система SCons(версии 1.2.0), использующая язык Python. С одной стороны, это делает систему расширяемой, но с другой — усложняет её изучение и использование, одновременно снижая быстродействие. Например, для решения стандартных задач приходится использовать «хитрый» код.
CMake же написан на языке C и использует крайне простой макроязык. В то же время этого языка оказывается достаточно для большей части задач конфигурирования. Отдельные операции конфигурирования реализованы в виде подключаемых модулей.
Многие известные СПО-проекты (например: Blender, Wesnoth) только начали переход от Autotools к Scons и CMake, и ещё не приняли однозначного решения в пользу Scons или CMake.
Программное обеспечение, использующее CMake
- Avidemux
- Bullet Physics Library
- Chicken
- Clementine
- Cuneiform
- DevIL
- Drishti
- EiskaltDC++
- FreeCAD
- GDCM
- IGSTK
- Insight Segmentation and Registration Toolkit
- KDE (начиная с 4 версии)
- Choqok
- Kicad
- LeechCraft
- LLVM
- LMMS
- MuseScore
- MySQL
- OGRE
- OpenSceneGraph
- ParaView
- PCSX2
- Pichi
- PvPGN
- Quantum GIS
- qutIM
- ReactOS
- Scribus
- Slicer
- Stellarium
- SuperTux
- The Visualization Toolkit
- OpenCV
См. также
Ссылки
- Сайт CMake
- Почему KDE перешёл к использованию CMake (англ.)
- Разработчики рассказывают о истории проекта CMake // Журнал «Открытые системы», 2007/03
- Что за штука CMake? // Журнал «Linux Format», #99, (wiki)
- Как использовать CMake в KDE4
- Руководство по CMake (рус.)
- Статьи по CMake (рус.)
Системы автоматизации сборки | |
---|---|
Системы автоматизации сборки | Make · Premake · CMake · SCons · Apache Ant · Apache Maven · NAnt · Buildout · MSBuild · Waf · Rake · Autotools |