你說得很對。 write CMakeLists.txt
>cmake
>make
順序是正確的。關於不同的配置(調試與發佈),您必須區分多配置生成器(Visual Studio,XCode)和單配置生成器(其他所有器件)。使用多配置生成器,您可以生成一個包含所有配置的生成系統(例如解決方案文件),並且可以在生成時進行選擇。
對於單一配置生成器,通過生成不同的構建系統,即通過在不同目錄中運行CMake多次(並使用不同的CMake變量值),可以獲得不同的配置。
所以,你會做這樣的事情:
> cd my_project/bld/debug
> cmake ../../src -DCMAKE_BUILD_TYPE=Debug
> cd ../release
> cmake ../../src -DCMAKE_BUILD_TYPE=Release
關於編輯緩存(通常是通過CMake的GUI或ccmake
):你是對的一次,這在很大程度上與傳遞選項./configure
來自AutoMake世界。這將是一個新下載項目的典型工作流程(使用CMake的GUI):你想
- 運行CMake的GUI,它指向源目錄(輸入)和二進制目錄(輸出)配置。這將填充緩存項目指定的默認值。如果CMake無法自動找到項目的某些依賴關係,則會以錯誤結束。
- 檢查緩存,改變自己不喜歡的任何值(如編譯選項),在任何缺少的選項填寫(路徑庫CMake的找不到等)
- 重複步驟2 & 3至您對該項目的設置感到滿意。
- 生成構建系統。
- 使用適當的構建工具退出CMake GUI和構建。
現在一切都很清楚。謝謝。 – Elena
當然你也可以通過選項來CMake的配置步驟,而不是在cmake的桂設置它們的:'cmake的... -DWITH_SQLITE = ON ...' –
您可以使用同一個build目錄調試,如果釋放CONFIGS您建立系統可以信任不接受對發佈生成調試的目標文件,並重新生成。否則,你可以用'--build的CMake ... --clean-first' –