什麼是Cmake

摘自東靈工作室原文鏈接:http://blog.csdn.net/www_doling_net/article/details/8532742

對於每個使用VTK的開發人員來說,必須認識的一個工具就是CMake,CMake的產生與發展也與VTK息息相關。以下一段內容摘自維基百科,主要是關於CMake的歷史:

“CMake是爲了解決美國國家醫學圖書館出資的Visible Human Project項目下的 Insight Segmentation andRegistration Toolkit (ITK)軟件的跨平臺構建的需求而創造出來的,其設計受到了Ken Martin開發的pcmaker的影響。pcmaker 當初則是爲了支援Visualization Toolkit (VTK)這個開源的三維圖形和視覺系統纔出現的,現在VTK也採用了CMake。”

從以上關於CMake的介紹可以知道,CMake其實就是一個跨平臺的工程構建工具,可以根據不同的平臺生成與平臺相關的工程配置文件,比如Windows平臺採用Visual Studio,則可以生成*.dsw/*.sln等項目文件。利用CMake可以管理大型的項目,VTK就是使用了CMake作爲項目管理工具。同時CMake也簡化了工程構建過程,只要給工程裏的每個目錄都寫一個CMakeLists.txt,就可以生成出該工程的編譯文件。CMake支持in-place構建(也就是生成的二進制文件跟源文件在同一個目錄)和out-of-place構建(編譯鏈接生成的二進制文件和源文件分別在不同的目錄,前面我們講VTK編譯過程時就是採用這種構建方式)兩種工程構建方式。

CMake有自己的語言和語法,用CMake對工程進行管理的過程,就是編寫CMakeLists.txt腳本文件的過程,原則上要求工程裏的每一個目錄都包含一個同名的文件,而且這個文件的名字只能是:CMakeLists.txt。假如寫成cmakelists.txt,由於Windows不區別文件名大小寫,所以可以通過;但如果在別的平臺,如Ubuntu,用CMake構建工程時就會提示找不到CMakeLists.txt,所以建議,不管在哪個平臺下,都使用CMakeLists.txt這個文件名,注意大小寫。


發佈了34 篇原創文章 · 獲贊 10 · 訪問量 8萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章