cmake簡單入門2

2021-10-05 22:12:35 字數 1220 閱讀 6514

# cmake 最低版本要求

cmake_minimum_required (version 2.8)

# 專案名稱

project (main)

# 是否使用自己的 tools 庫

option (use_mymath "use provided math implementation" on)

# 是否加入 mathfunctions 庫

if (use_mymath)

include_directories ("$")

add_subdirectory (tools)

set (extra_libs $ tools)

endif (use_mymath)

#cmake 對原始碼的設定

configure_file (

"$/config.h.in"

"$/config.h"

)include_directories ("$")

# 查詢當前目錄下的所有原始檔, 並將名稱儲存到 dir_srcs 變數

aux_source_directory(main/ dir_srcs)

# 指定生成目標

add_executable(main $)

# 新增鏈結庫

target_link_libraries(main $)

注意:configure_file的設定必須在use_mymath定義之後,否則use_mymath預設為off

#include #include #include "config.h"

#ifdef use_mymath

#include "tools/math.h"

#else

#include #endif

int main(int argc, char* ar**)

double input = atof(ar**[1]);

int n = atoi(ar**[2]);

double out = pow(input, n);

printf("pow(%f, %d) is %f\n", input, n, out);

}

包含配置檔案的標頭檔案,選擇性進行編譯

cmake簡單入門1

查詢當前目錄下的所有原始檔,並將名稱儲存到 dir lib srcs 變數 aux source directory dir lib srcs 生成鏈結庫 add library tools cmake 最低版本要求 cmake minimum required version 2.8 專案名稱 p...

cmake入門2子目錄

目錄環境 背景方式一 源 方式二 庫 ubuntu18 cmake version 3.17.3 把工具類放到單獨的資料夾下,以便結構清晰。比如現在有乙個utils的資料夾,下面放自己編寫好的工具類。目錄結果如下 cmakelists.txt cmake minimum required versi...

CMake入門實戰

編寫cmake配置檔案cmakelists.txt。執行命令cmake path或者ccmake path生成makefile。其中,path是cmakelists.txt所在的目錄。使用make命令進行編譯。首先編寫 cmakelists.txt 檔案,並儲存在與main.cc原始檔同個目錄下 c...