cmake 內建變數
資訊變數
cmake_system
系統名稱,例如 linux-2.6.22、freebsd-5.4-release、windows 5.1
camke_system_name
系統名稱,如 linux、freebsd、windows
cmake_system_version
系統版本,如 2.6.22
cmake_system_processor
處理器名稱,如 i686
unix
bool,在所有的類 unix 平台為 true,包括 os x 和 cygwin
win32
bool,在所有的 win32 平台為 true,包括 cygwin
cmake_major_version
cmake 主版本號,如 2.8.6 中的 2
cmake_minor_version
cmake 次版本號,如 2.8.6 中的 8
cmake_patch_version
cmake 補丁等級,如 2.8.6 中的 6
預定義變數
在 cmakelists.txt 中使用 set 指定
cmake 命令中使用,如 cmake -dbuild_shared_libs=off
project_name
返回通過 project 定義的專案名稱
cmake_c_compiler
c 編譯器,預設 /usr/bin/cc
cmake_cxx_compiler
c++編譯器,預設 /usr/bin/c++。 也可通過指令 add_definitions() 新增
cmake_c_flags
編譯 c 檔案時的選項,預設為空,如 -g;也可以通過 add_definitions 新增編譯選項
cmake_cxx_flags
編譯 c++ 檔案時的選項,預設為空
cmake_include_path
新增標頭檔案搜尋路徑. 預設為空。配合 find_file() 以及 find_path 使用
cmake_library_path
新增庫檔案搜尋路徑. 預設為空。配合 find_library() 使用
cmake_install_prefix
定義 cmake 安裝的路徑, 預設 /usr/local
project_binary_dir
執行 cmake 命令的目錄,通常是 $/build,同 cmake_binary_dir、_binary_dir
project_source_dir
工程的根目錄,同 cmake_source_dir、_source_dir
cmake_current_source_dir
當前處理的 cmakelists.txt 所在的路徑
cmake_current_binary_dir
target 編譯目錄;
使用 add_surdirectory(src bin) 可以更改此變數的值;
set(executable_output_path ) 並不會對此變數有影響,只是改變了最終目標檔案的儲存路徑新路徑》
cmake_prefix_path
預設為空。
指定要搜尋的安裝字首的目錄 find_package(), find_program(), find_library(), find_file(),和 find_path() 命令。
每個命令將新增相應的子目錄(例如 bin,lib 或 include),作為其自己的文件中指定。預設空,由專案設定.
cmake_module_path
預設為空。
cmake 為上百個軟體包提供了查詢器 (finder):find***x.cmake 當使用非 cmake 自帶的 finder 時,需要指定 finder 的路徑,這就是 cmake_module_path,配合 find_package() 使用
set(cmake_module_path $/cmake),然後可以用 include 命令來呼叫自己的模組
cmake_allow_loose_loop_constructs
用來控制 if else 語句的書寫方式,預設為空。
cmake_build_type
控制構建型別。可選引數:
none: default
debug: 生成除錯資訊
release: 發布版本,進行最佳化
此值不會再 configure 的時候自動初始化,需手動設定
命令列引數 cmake -dcmake_build_type=debug
build_shared_libs
將所有程式庫的 target 設定為共享庫。如果未設定,使用 add_library 時又沒有指定庫型別,預設編譯生成靜態庫
executable_output_path
定義目標二進位制可執行檔案的存放位置,預設為空
library_output_path
定義目標鏈結庫檔案的存放位置,預設為空
cmake學習(五) 系統預設變數和內建變數
1 在不同的平台編譯的時候,會用到一些系統內建的變數,比如作業系統名稱,版本號之類 cmake system 系統全名,如 linux 2.4.22 freebsd 5.4 release 或 windows 5.1 cmake system name 系統名稱,如 linux freebsd or...
CMake常用變數
cmake變數 cmake共用七種變數,如下所示 目錄 1 提供資訊的變數。2 控制變數。3 描述系統的變數。4 控制構建過程的變數。5 語言變數。6 ctest變數。7 cpack變數。first 提供資訊的變數 cmake binary dir cmake source dir cmake cu...
mysql內建變數 MySQL常用內建變數
mysql用很多常用的內建變數,掌握這些內建變數後對於我們快速獲取當前mysql的配置有很大幫助,下面就來列舉幾個常用的變數。檢視當前mysql版本號資訊。show variables like version mariadb none show variables like version var...