cmake處理源**分布在不同目錄中的情況也很簡單,現在假設我們的源**分布情況如下:
源**的分布情況
其中src目錄下的檔案要編譯成乙個鏈結庫
第一步,專案主目錄中的cmakelist.txt
在目錄step2中建立檔案cmakelist.txt檔案內容如下:
目錄 step2 中的 cmakelists.txt
1 project(main)在該檔案中使用add_library將src目錄中的原始檔編譯為共享庫2 cmake_minimum_required(version 2.6)
3 add_subdirectory( src )
4 aux_source_directory(. dir_srcs)
5 add_executable(main $ )
第三行,使用命令add_subdirectory指明本專案包含乙個子目錄src。
第六行,使用命令 target_link_libraries指明可執行檔案main需要連線乙個名為test的鏈結庫
第二步,子目錄中的cmakelists.txt
在子目錄中src中建立cmakelists.txt檔案內容如下:
1 aux_source_directory(. dir_test1_srcs)
2 add_library ( test $)
第三步,執行cmake
至此我們完成了專案所有cmakelists.txt檔案的編寫,進入目錄step2中依次執行命令 「cmake.」he "make"得到如下結果:
處理多源檔案目錄時 cmake 的執行結果
在執行cmake的過程中,首先解析目錄step2中的cmakelist.txt,當程式執行命令add_subdirectory(src)時,進入目錄src對其中的cmakelists.txt進行解析
參考文獻:
cmake處理多源檔案目錄的方法
cmake處理源 分布在不同目錄中的情況也很簡單,現在假設我們的源 分布情況如下 源 的分布情況 其中src目錄下的檔案要編譯成乙個鏈結庫 第一步,專案主目錄中的cmakelist.txt 在目錄step2中建立檔案cmakelist.txt檔案內容如下 目錄 step2 中的 cmakelists...
CMake入門 多目錄多原始檔簡單布局
main.cc的內容 include include include math mathfunctions.h int main int argc,char ar double base atof ar 1 int exponent atoi ar 2 double result power bas...
(三)CMake的多原始檔編譯
工作目錄下有多個原始檔,那麼cmakelists.txt 手動鍵入原始檔名稱,很麻煩。檔案結構如下 cmakelists.txt main.cpp multiple.cpp operation.cpp operation.h 檔案內容 multiple.cpp int mul int a,int b...