一、基本介紹
Cmake-gui是Cmake的圖形化界面,通常來說,CMake是一個跨平台的編譯工具,它並不能替代make或者automake,它只是一個在編譯前生成Makefile,ninja等的工具,使得開發人員可以更加專註於代碼而不用考慮編譯環境中的各種設置。而cmake-gui作為CMake的圖形化界面,可以更加方便的進行項目管理,配置等操作。下面我們將具體介紹Cmake-gui的使用方法。
二、Cmake-gui界面簡介
Cmake-gui界面整體分為左右兩個部分,左邊是工程面板,右邊是項目屬性。下面我們將分別介紹這兩個部分。
三、左部工程面板
1、CmakeLists.txt項目文件
工程面板的第一項是根目錄的CmakeLists.txt,我們在配置Cmake項目的時候都需要先編寫CmakeLists.txt文件定義項目編譯選項和規則,在Cmake-gui中也不例外。在Cmake-gui的工程面板中,我們可以通過打開一個CMakeLists.txt文件來載入已經存在的CMakeLists.txt文件,並對它進行配置。
cmake_minimum_required(VERSION 3.17) project(MyProject) set(CMAKE_CXX_STANDARD 14) add_executable(MyProject main.cpp)
2、源碼目錄和構建目錄
在載入CMakeLists.txt文件之後,我們需要配置源碼目錄和構建目錄。在Cmake中,我們把我們的工程結構分為源碼目錄和構建目錄。源碼目錄是我們寫代碼的地方,構建目錄則是生成Makefile、ninja、Visual Studio、Xcode等IDE項目文件的地方。在工程面板的上方是源碼目錄,下方是構建目錄,可以通過browse按鈕選擇路徑。
四、右部項目屬性
1、Cmake-gui屬性設置
在Cmake-gui中,我們可以通過編輯器的方式設置各種編譯變數,比如C++標準和編譯選項等。在右邊的屬性面板,我們可以看到一些用於配置項目的選項,比如生成器(Makefile生成器或者Visual Studio生成器), 編譯器選項,鏈接器選項等。
set(CMAKE_CXX_STANDARD 14) set(CMAKE_CXX_FLAGS "-O2")
2、生成Makefile
在做完源碼目錄與構建目錄的配置之後,我們可以直接點擊Generate按鈕生成Makefile文件。
五、Cmake-gui常用命令實例
1、設置編譯器版本
set(CMAKE_C_COMPILER gcc-8) set(CMAKE_CXX_COMPILER g++-8)
2、使用Boost庫
find_package(Boost COMPONENTS program_options REQUIRED) if(Boost_FOUND) include_directories(${Boost_INCLUDE_DIRS}) add_executable(my_program main.cpp) target_link_libraries(my_program ${Boost_LIBRARIES}) endif()
3、設置輸出路徑
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin) set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib) set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
四、總結
Cmake-gui是一個十分實用、方便的圖形化管理工具,對於一些初學者,使用cmake-gui不僅能夠讓您更好地了解cmake的整個編譯流程,還可以更加便捷地對您的項目進行管理與配置。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/295425.html