如何在Visual Studio 2019中使用cmake项目进行``编辑并继续''构建?

时间:2019-03-15 20:30:57

标签: visual-studio

我想在Visual Studio cmake C ++项目中执行“编辑并继续”。 我知道我必须将/ Zi更改为/ ZI,但是在哪里?

这是C ++

2 个答案:

答案 0 :(得分:0)

最简单的方法是在定义第一个目标之前插入以下命令:

if (CMAKE_CXX_COMPILER_ID MATCHES "MSVC")
  set(CMAKE_CXX_FLAGS_DEBUG "/ZI")
  set(CMAKE_SHARED_LINKER_FLAGS "/SAFESEH:NO")
  set(CMAKE_EXE_LINKER_FLAGS "/SAFESEH:NO")
endif()

如果您希望为特定目标设置选项,请使用

if (CMAKE_CXX_COMPILER_ID MATCHES "MSVC")
  target_compile_options(${PROJECT_NAME} PRIVATE "/ZI")
  target_link_options(${PROJECT_NAME} PRIVATE "/SAFESEH:NO")
endif()

警告:从撰写本文时的最新版本的Visual Studio(16.4.2)开始,Visual Studio无法处理对lambda函数的更改。

答案 1 :(得分:0)

选项必须设置如下:

CMAKE_C_FLAGS_DEBUG: /MDd /ZI /Ob0 /Od /RTC1
CMAKE_CXX_FLAGS_DEBUG: /MDd /ZI /Ob0 /Od /RTC1
CMAKE_EXE_LINKER_FLAGS_DEBUG: /debug /INCREMENTAL /LTCG:OFF
CMAKE_MODULE_LINKER_FLAGS_DEBUG: /debug /INCREMENTAL /LTCG:OFF
CMAKE_SHARED_LINKER_FLAGS_DEBUG: /debug /INCREMENTAL /LTCG:OFF