這幾天專案中接觸到了ndk相關的東西,順便把cmake相關的東西補了一下。搞明白了之後, 使用clion都得心應手了!這篇部落格記錄一些自己使用到了的並且理解了用法。cmake最終生成的是相應的所需要的makefile,但是makefile有很多種,因此它可以起到乙個跨平台的作用。
命令解釋
示例add_library
生成庫,如.so
add_library(testlib shared library.c library.h)
add_executable
生成可執行檔案
add_executable(leetcode007 leetcode_007.cpp)
target_link_libraries
鏈結其他庫到目標庫或者可執行檔案上
target_link_libraries(executor $/../testcpplib/cmake-build-debug/libtestlib.so)
include_directories
新增其他需要編譯的檔案
include_directories($/src/main/cpp/include )
每新增乙個可執行的程式,就會新增乙個執行目標。明白怎麼搞成像code::blocks那樣的功能了,加上它的**提示,要上天啊。
生成的so庫在這裡
更多可參考:
CMake基本使用
0 指令是大小寫無關的,引數和變數是大小寫相關的。1 set 指令 set var 用來顯式的定義變數 2 add subdirectory add subdirectory source dir binary dir 用於向當前工程新增存放原始檔的子目錄,即當前目錄下還有乙個資料夾裡有需要編譯的原...
cmake取消巨集定義 CMake基本使用
cmake是個很方便的構建系統。官方的文件寫的很明白,就是有點長。於是,根據自己的使用情況,挑選其中最重要的,簡要說明於下 cmakelists.txt的編寫 cmakelists.txt的命令不區分大小寫。基本結構 最低版本宣告,如果本機的cmake版本小於這個,會告警 cmake minimum...
CMake基本使用 常更
將乙個檔案下所有原始檔 新增到檔案target 使用正規表示式匹配 file globlocation src location h location cpp 新增檔案到target add executable target 設定c 語法 c 11 set cmake cxx standard 1...