CMake系列之二:入門案例-單個源文件
阿新 • • 發佈:2018-04-22
bubuko 源文件 註釋 http 編寫 AD 源碼 power 比較
編寫一個源碼文件
如下
1 #include<stdio.h> 2 #include<stdlib.h> 3 4 double power(double base,int exponent) 5 { 6 int result = base; 7 int i; 8 if(exponent ==0){ 9 return 1; 10 } 11 for(i=1;i<exponent;++i){ 12 result=result*base; 13 }14 return result; 15 } 16 17 int main(int argc,char *argv[]) 18 { 19 if(argc<3){ 20 printf("Usage:%s base exponent \n",argv[0]); 21 return 1; 22 } 23 double base = atof(argv[1]); 24 int exponent = atoi(argv[2]); 25 double result = power(base,exponent);26 printf("%g ^ %d is %g\n",base,exponent,result); 27 return 0; 28 }
編寫CMakeLists.txt
該文件和源文件在同一個目錄
1 #CMake版本要求 2 cmake_minimum_required (VERSION 2.8) 3 #項目信息 4 project (Demo1) 5 #指定生成目標 6 add_executable(Demo main.c)
CMakeLists.txt 的語法比較簡單,由命令、註釋和空格組成,其中命令是不區分大小寫的。符號 #後面的內容被認為是註釋。命令由命令名稱、小括號和參數組成,參數之間使用空格進行間隔。
對於上面的 CMakeLists.txt 文件,依次出現了幾個命令:
- cmake_minimum_required:指定運行此配置文件所需的 CMake 的最低版本;
- project:參數值是 Demo1,該命令表示項目的名稱是 Demo1。
- add_executable: 將名為main.c的源文件編譯成一個名稱為 Demo 的可執行文件。
編譯項目
現在當前項目執行“cmake .”,得到Makefile後再使用make命令編譯得到Demo1可執行文件
CMake系列之二:入門案例-單個源文件