使用cmake添加_CRT_SECURE_NO_WARNINGS定义

ozg*_*gur 7 c++ cmake visual-studio visual-c++

是否可以_CRT_SECURE_NO_WARNINGS使用cmake 添加预处理程序定义?

add_definitions(-CRT_SECURE_NO_WARNINGS)
add_definitions(-_CRT_SECURE_NO_WARNINGS)
add_definitions(_CRT_SECURE_NO_WARNINGS)
Run Code Online (Sandbox Code Playgroud)

这些是我到目前为止尝试过的。这些尝试均未成功。

sky*_*ack 10

用这个:

if(MSVC)
    add_definitions(-D_CRT_SECURE_NO_WARNINGS)
endif()
Run Code Online (Sandbox Code Playgroud)

请参阅此处获取官方文档。
通用形式为:

add_definitions(-DFOO -DBAR ...)
Run Code Online (Sandbox Code Playgroud)

请注意,如果将其用于单个目标,则应使用target_compile_definitions