CMake三月硬件

Lev*_*son 15 c c++ cmake

什么是启用相当于GCC的CMake方式-march=,特别是-march=native?真的没有比这更好的了CHECK_CXX_COMPILER_FLAG,例如:

include(CheckCXXCompilerFlag)
CHECK_CXX_COMPILER_FLAG("-march=native" COMPILER_SUPPORTS_MARCH_NATIVE)
if(COMPILER_SUPPORTS_MARCH_NATIVE)
    set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=native")
endif()
Run Code Online (Sandbox Code Playgroud)

Bri*_*ain 6

是的,此功能测试是将参数应用于 的适当方法CMAKE_CXX_FLAGS

也许改进可能是将其隐藏在 后面option,正如 @LeviMorrison 所建议的那样。

option(OPTIMIZE_FOR_NATIVE "Build with -march=native" OFF)
Run Code Online (Sandbox Code Playgroud)