2012-05-21 180 views
0

我來自unixy背景,所以傾向於比ide更喜歡命令行風格自動化。使用cmake編譯

我試着深入windows開發。我以前在Windows上編寫過程序只是使用cl編譯器編譯c代碼。我想轉移到像cmake這樣的自動構建系統。

我可以讓cmake創建一個Visual Studio解決方案,它將編譯。但那不是我正在尋找的。我在尋找的是cmake調用cl來編譯/鏈接代碼本身,就像調用gcc一樣。

cmake能夠做到這一點,或者Scons會更適合我嗎?

+2

看看cmake --build命令。 – drescherjm

回答

0

我不太確定cmake,但SCons有一些專用於Microsoft Visual Studio的構建器。

尋找在利用Scons builder documentation如下:

  • MSVSProject()
  • MSVSSolution()

加SCons的有一個更優雅的語法,它的蟒蛇! :)

1

一旦您用CMake創建了項目,cmake也可以運行構建。

cd builddir cmake --build。

您也可以使用CMake創建nmake或jom(並行nmake)makefile,甚至gmake。所以,從命令行使用CMake並使用VS編譯器肯定是可行的。

+0

這幾乎是我想要做的。但在這種情況下,cmake會調用其他外部構建工具。 cmake是否擁有自己的本地makefile格式,它將直接調用cl(或任何其他編譯器),而不是通過* make工具? – rhlee

+0

@rhlee,SCons直接支持並行構建,無需外部工具:'scons -j 4'將並行編譯4個任務 – Brady

+0

CMake不會以這種方式工作。爲什麼你想避免使用其他工具?無論如何你需要一個編譯器,所以至少nmake可能也會被安裝。 – Peter

0

根據Peter的評論,發現cmake是一個構建生成器工具。它生成外部構建工具可以運行的makefile。所以我會使用cmake + namke或scons。