溫馨提示×

c++ cmake編譯如何設置編譯選項

c++
小樊
325
2024-09-27 17:47:43
欄目: 編程語言

在C++中,使用CMake進行編譯時,可以通過以下方法設置編譯選項:

  1. CMakeLists.txt文件中直接設置編譯選項。例如,要設置C++標準為c++11,可以在CMakeLists.txt文件中的任意位置添加以下代碼:

    set(CMAKE_CXX_STANDARD 11)
    

    類似地,可以設置其他編譯選項,如優化級別、調試信息等。例如,要將優化級別設置為-O2,可以添加以下代碼:

    set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O2")
    
  2. 在命令行中使用-DCMAKE_CXX_FLAGS參數傳遞編譯選項。例如,要將C++標準設置為c++11并將優化級別設置為-O2,可以在命令行中執行以下命令:

    cmake -DCMAKE_CXX_STANDARD=11 -DCMAKE_CXX_FLAGS="-O2" ..
    

    請注意,這種方法可能會覆蓋在CMakeLists.txt文件中設置的編譯選項。因此,建議首先在CMakeLists.txt文件中設置編譯選項,然后在需要時使用命令行參數進行覆蓋。

  3. 使用target_compile_options命令為特定目標設置編譯選項。例如,要為名為my_target的目標設置C++標準為c++11和優化級別為-O2,可以在CMakeLists.txt文件中添加以下代碼:

    add_executable(my_target main.cpp)
    target_compile_options(my_target PRIVATE -std=c++11 -O2)
    

    使用此方法,可以為不同的目標設置不同的編譯選項。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女