Cmake 構建程式

2021-07-12 04:33:47 字數 1137 閱讀 4816

cmake 是乙個跨平台的自動化建構系統,它使用乙個名為 cmakelists.txt 的檔案來描述構建程式,可以產生標準的構建檔案,如 unix 的 makefile。cmakelists.txt 需要手工編寫,也可以通過編寫指令碼進行半自動的生成。cmake 提供了比 autoconfig 更簡潔的語法。在 linux 平台下使用 cmake 生成 makefile 並編譯的流程如下:

編寫 cmakelists.txt。

執行命令「cmake path」或者「ccmake path」生成 makefile ( path 是 cmakelists.txt 所在的目錄 )。

使用 make 命令進行編譯。

假設有原始檔main.cpp:

#include

using

namespace

std;

int main()

在linux下編譯該檔案,可以使用命令g++ main.cpp -o run就可一編譯並生成命名為『run』的可執行檔案。

如何使用cmake來實現上述的功能呢?

1. 編寫cmakelists.txt檔案

project(main)

cmake_minimum_required(version 2.8)

aux_source_directory(. src)

add_executable(main $src)

乙個簡單的cmakelists.txt檔案就包含這幾行(不區分大小寫)。分析一下,第一行指定該工程的名字,括號中的名字自己取乙個即可;第二行限定使用cmake的最低版本,ubuntu14.04自帶的是2.8;第三行就是需要編譯的原始檔路徑了,例子中是把當前路徑(.)設為原始檔路徑並賦值給變數src;第四行,把變數src下的原始檔編譯生成可執行檔案main(可以任意命名)。

2. 把cmakelists.txt檔案放在main.cpp相同的路徑下,執行cmake .,cmake 就會自動在當前路徑尋找cmakelists.txt檔案並編譯,生成makefile檔案。

3. 依然在相同的路徑下,執行make,可以看到生成了可執行檔案『main』

多原始檔處理和新增鏈結庫的使用待續…

CMAKE自動構建

cmake 入門實戰 cmake 手冊詳解 兩個自己寫的cmakelists.txt用到了常用的編譯功能 cmake 最低版本號要求 cmake minimum required version 2.8 指定c編譯器 set cmake c compiler arm none linux gnuea...

cmake構建qt工程

如何選擇?using cmake to build qt projects 一文中說 儘管如此,如果簡單qt的工程都不知道怎麼用 cmake 構建,複雜的工程,就更不知道如何使用 cmake 了。還是從簡單的學起吧 include include qdebug int main int argc,c...

CMake構建CUDA專案

在大量的c c 的專案中都使用cmake來進行專案的管理,而cuda又是很流行的平行計算庫,利用cmake來構建cuda專案就顯得很有必要了,而且專案中使用的cmakelists.txt基本框架一致的,下面簡單地記載一下這種cmakelists.txt檔案的內容 cmakelists.txt for...