1 引言
linux中進行C/C++開發,一般都是先用編輯器寫好代碼,然后使用gcc工具來編譯程序。
文件數量不多的工程,可以直接敲gcc命令進行編譯。對于文件較多的工程,就要使用Makefile來管理代碼的編譯了。
而手動編寫Makefile其實也是具有一定的難度的,更方便的方式是使用更易編寫CMake來自動生成Makefile。
2 Linux中安裝CMake
這里插一句,在Window系統中,許多人也用過CMake,它可以配合集成開發環境如Visual Studio,通過圖形化的操作界面,操作CMake圖形界面進行代碼的編譯。
本篇介紹的,在Linux中使用CMake,還用不到圖形界面,仍然是文本編輯的方式使用CMake。
CMake在Linux的安裝,直接使用命令安裝即可:
sudo apt install cmake
安裝完成之后可以查看cmake的版本,我用的是3.10.2
3 編譯單個文件的CMake基礎示例
3.1 編寫C源文件
首先寫一個最簡單的hello word程序,hello.c:
#include int main(void) { printf("Hello World\n"); return 0; }
3.2 編寫CMakeLists.txt
然后在相同目錄下編寫CMakeLists.txt:
cmake_minimum_required (VERSION 2.8) project (hello) add_executable(hello hello.c)
這是一個最基礎的CMake使用模板,這3行的含義如下:
第一行:要求cmake的最低版本為2.8
第二行:工程名
第三行:生成的可執行文件名為hello,使用的源文件為hello.c
注:以上3條,add_executable起主要作用,前兩條去掉也可以運行
3.3 執行cmake指令生成Makefile
然后輸入以下命令運行cmake,從而幫我們自動生成makefile文件:
cmake .
這個“點”表示是當前目錄搜索源文件。
cmake指令的執行結果如下:
可以看下CMake生成的makefile文件,相比較自己手寫的makefile,這個自動生成的makefile,內容很多:
3.4 執行make指令編譯代碼
makefile文件產生之后,就可以使用make指令來編譯源代碼了:
make
執行make指令之后,可以看到生成了可執行文件hello,運行這個hello文件,就可以看到程序的輸出了:
4 總結
本篇介紹了Liunx中如何使用CMake來生成makefile,進行進行源程序的編譯。
將上述的CMake編譯單個源文件的使用操作總結為一張圖:
編寫CMake主要就是編寫CMakeLists.txt,基礎模板為:
cmake_minimum_required (VERSION 2.8) project (hello) add_executable(hello hello.c)
其中最主要的一句就是:
add_executable(hello hello.c)
審核編輯:劉清
-
Linux
+關注
關注
87文章
11292瀏覽量
209326 -
gcc編譯器
+關注
關注
0文章
78瀏覽量
3378
發布評論請先 登錄
相關推薦
評論