CMake比較實用的命令小記

來源:互聯網
上載者:User

標籤:選項   bsp   初始化   指定   .cpp   庫檔案   複製   value   總結   

最近將項目遷移到CMake進行管理,對CMake進行了一些研究,覺得有一些命令非常實用但很少有資料提到,在這裡做一個總結,至於太普通常用的命令就不提了。

OPTION(OPTION_VAR “Description” [initial value]):用於管理編譯選項,定義並初始化自訂變數。

例:

OPTION(BUILD_TEST  "Build the test project" ON)

FIND_PATH(<VAR> name path1 path2):尋找包含path1,path2的路徑,可以在CMake介面中手動設定。可以用來設定包含庫或者標頭檔的路徑。

例:

FIND_PATH(LIB_INCLUDE_DIR Test)

FIND_LIBRARY(<VAR> name path1 path2 …):與FIND_PATH相似,需要得到指定檔案路徑。

FILE(GLOB variable [RELATIVE path] [globbing expressions]...):檔案的基本操作,可用於尋找指定目錄中所有指定格式的檔案,省去很多手動Set的麻煩。

例:

FILE(GLOB HEAD_Files “{CMAKE_SOURCE_DIR}/*.h”)

ADD_SUBDIRECTORY(src_dir [binary_dir] [EXCLUDE_FROM_ALL]):向當前工程添加存放源檔案的子目錄,並可以指定中間二進位和目標二進位的存放位置。

例:

ADD_SUBDIRECTORY(Common)

INSTALL(TARGETS targets... [EXPORT <export-name>] [...]):指定在安裝時要啟動並執行規則。可用於運行檔案或者庫檔案的安裝和複製。

例:

INSTALL(TARGETS main DESTINATION “../lib/main.cpp”)INSTALL(FILES ${HEAD_Files} DESTINATION "../lib/include")

 

CMake比較實用的命令小記

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.