1. 程式人生 > >cmake 命令列

cmake 命令列

兩種使用方式:

  1. cmake [option] <path-to-source> 指向含有頂級CMakeLists.txt的那個目錄
  2. cmake [option] <path-to-existing-build> 指向含有CMakeCache.txt的那個目錄

第一種方式用於第一次生成cmake makefile,此後可以在build dir裡直接cmake . 注意.表示當前目錄,因為當前目錄中已經有CMakeCache.txt,所以適用第二種方式。實際上cmake總是先檢查指定的build dir中有沒有CMakeCache.txt,如果有就按第二種方式處理;如果沒有才尋找CMakeLists.txt使用第一種方式處理。

常用選項:

  • -G <generator-name> 指定makefile生成器的名字。例如:cmake -G "MinGW Makefiles";注意generator是大小寫敏感的,即使是在windows下。generator所用的命令(gcc,cl等)最好已經設定在環境變數PATH中。有個例外就是生成visual studio的工程不必設定環境變數,只要安裝了對應的vs,cmake可以自動找到。
  • -D<var>:<type>=<value> 新增變數及值到CMakeCache.txt中。注意-D後面不能有空格,type為string時可省略。例如:cmake -DCMAKE_BUILD_TYPE:STRING=Debug。
    MinGW Generator預設生成CMAKE_BUILD_TYPE為空,即release;NMake Generator預設生成CMAKE_BUILD_TYPE為Debug。
  • -U<globbing_expr> 刪除CMakeCache.txt中的變數。注意-U後面不能有空格,支援globbing表示式,比如*,?等。例如:cmake -UCMAKE_BUILD_TYPE。