cmake

cmake

主流編譯工具
CMake是主流編譯工具之一,具有開源、自動化和跨平台等特性。CMake的主要配置文件為CMakeLists.txt,在該文件中可通過編寫簡單的語句對所有平台的編譯過程進行描述。CMake類項目是指項目的每個目錄下均含有CMakeLists.txt文件,即可用CMake命令對項目進行編譯與管理。CMake區别于其他編譯工具的一個重要特點也是重要優勢就在于它的跨平台性,其跨平台性主要體現在隻要有一套CMake的編譯腳本,就可在各大主流平台上編譯出各自可執行的工程腳本,開發者可以使用各大平台上的原生構建系統來管理項目。但是,目前關于CMake配置文件的設計文檔和編譯過程的描述文檔比較匮乏,存在開發維護CMake類項目困難的問題。特别是随着軟件系統規模的不斷擴大和複雜性的不斷增加,上述問題越來越明顯。[1]
  • 中文名:描述所有平台的安裝(編譯過程)
  • 外文名:cross platform make
  • 類型:跨平台的安裝(編譯)工具
  • 描述:所有平台的安裝(編譯過程)
  • 功能:可以編譯源代碼、制作程式庫

定義

CMake可以編譯源代碼、制作程序庫、産生适配器(wrapper)、還可以用任意的順序建構執行檔。CMake支持in-place建構(二進檔和源代碼在同一個目錄樹中)和out-of-place建構(二進檔在别的目錄裡),因此可以很容易從同一個源代碼目錄樹中建構出多個二進檔。CMake也支持靜态與動态程式庫的建構。

“CMake”這個名字是“cross platform make”的縮寫。雖然名字中含有“make”,但是CMake和Unix上常見的“make”系統是分開的,而且更為高階。

曆史

CMake是為了解決美國國家醫學圖書館出資的Visible Human Project專案下的Insight Segmentation and Registration ToolkIT (ITK) 軟件的跨平台建構的需求而創造出來的,其設計受到了Ken Martin開發的pcmaker所影響。pcmaker當初則是為了支持Visualization Toolkit這個開放源代碼的三維圖形和視覺系統才出現的,VTK也采用了CMake。在設計CMake之時,Kitware公司的Bill Hoffman采用了pcmaker的一些重要想法,加上更多他自己的點子,想把GNU建構系統的一些功能整合進來。CMake最初的實作是在2000年中作的,在2001年初有了急速的進展,許多改良是來自其他把CMake整合到自己的系統中的開發者,比方說,采用CMake作為建構環境的VXL社群就貢獻了很多重要的功能,Brad King為了支持CABLE和GCC-XML這套自動包裝工具也加了幾項功能,奇異公司的研發部門則用在内部的測試系統DART,還有一些功能是為了讓VTK可以過渡到CMake和支持(“美國Los Alamos國家實驗室”&“洛斯阿拉莫斯國家實驗室”)的Advanced Computing Lab的平行視覺系統ParaView而加的。

組态檔

組态檔是用一種建構軟件專用的特殊編程語言寫的CMake腳本。

内建C語言、C++、Fortran、Java的自動相依性分析功能。

經由CMake腳本語言支持SWIG、Qt、FLTK。

内建對微軟Visual Studio.NET和過去的Visual Studio版本的支持,可以産生後綴為.dsp、.sln和.vcproj的文檔。

用傳統的時間标簽偵測檔案内容的改變。

支持平行建構(在多台電腦上同時建構)

在許多操作系統上進行跨平台編譯,包括Linux、POSIX相容的系統(AIX、*BSD、HP-UX、IRIX、MinGW/MSYS、Solaris系統)、Mac OS X和微軟Windows 95/98/NT/2000/XP等。

産生可以給Graphviz用的全局相依圖。

已經和Dart、CTest和CPack等軟件測試和釋出的工具整合。

應用軟件

Bullet Physics Engine

KDE (starting with version 4)

The Visualization Toolkit (VTK)

Insight Segmentation and Registration Toolkit (ITK)

ParaView

DevIL-Open Image Library

OpenSceneGraph

Scribus

Drishti

PvPGN

Chicken

ParadisEO

Quantum GIS

OPENCV

PCL

Fast Light Toolkit(FLTK)

MySql 5.58版本以後

Clion

安裝

下載cmake

Windows版本安裝直接運行EXE

LINUX版本的安裝:

安裝cmake

cmake-*.*.*tar.gz為下載下來的源碼包

tar xvf cmake-*.*.*.tar.gz

cd cmake-*.*.*

./bootstrap

make

make install

如果已經安裝了cmake,想要安裝新版本,則:

cd cmake-*.*.*

cmake.

make

make install

相關詞條

相關搜索

其它詞條