筆記 cmake 使用

2021-08-13 18:25:11 字數 1652 閱讀 1158

1.新增路徑

add_subdirectory("replay")

2.新增執行程式

add_executable(replay "replay.cc")

3.設定專案檔案路徑

set_target_properties(replay properties folder replay)

4.設定依賴庫

target_link_litraries(replay sc2api)

5.編譯庫

file(glob sources_replay "replay/*.cpp" "replay/.cc" "replay/*.h")

add_library(replay sources_replay)

5.新增依賴庫標頭檔案路徑

link_directories($/include)

6.查詢依賴庫

7.設定編譯版本

add_compile_options(-std=c++11)

8.設定庫檔案編譯屬性

set_target_properties($ properties linker_language cxx)
9.cmake 輸出錯誤資訊,

message(fatal_error " please set mysqlcpp_root_dir")
10.find_library

find_library(mysql_libs mysqlcppconn $)
11.設定編譯語言

set_target_properties(libbbbb properties linker_language c)
12.引入*.cmake

set(cmake_module_path $/cmake)

include(******)

14.新增巨集引數 

add_definitions(-dbitprim_currency_bch)
15.自定義巨集

macro(add_design_path path)

file(glob souce_file "mode/$/*.hpp" "mode/$/*.cpp")

add_executable("$" $)

target_include_directories($ public "mode/$")

endmacro()

16.foreach

set(design_path

factory)

foreach(path $)

add_design_path($)

endforeach()

17.獲取執行命令

execute_process(

command git log -1 --format=%h

working_directory "$"

output_variable git_version

)string (regex replace "[\n\t\r]" "" git_version $)

cmake使用筆記

cmake方法 工程結構 project bin cmakelists.txt include test.h lib cmakelist.txt libtest.so src cmakelists.txt main.cpp test.cpp project目錄中 add subdirectory 目...

Cmake使用筆記,Cmakelist編寫

project languages 將name存到project name,同時設定變數 include directories after before system dir1 dir2 指定標頭檔案的搜尋路徑,相當於指定gcc的 i引數 include directories hello 增加h...

CMAKE的學習筆記 初始CMAKE

cmake是乙個很強大的編譯工具 最近在看brpc,發現其中的編譯部分都是cmake來完成的,在囫圇吞棗編譯出第乙個demo後,我覺得自己該學習一下cmake了。1 及其簡單的例子 任何東西都是從hello world開始的,cmake也不例外,這裡就是乙個非常簡單的cmake 請注意,檔名必須是c...