如何在CMake中添加_ITERATOR_DEBUG_LEVEL?

4
我对CMake还不熟悉,我想在Release版本中将_ITERATOR_DEBUG_LEVEL设置为0,在Debug版本中将其设置为2,以解决编译依赖其他项目的项目时出现的问题。
错误信息如下:
_iterator_debug_level值“2”与值“0”不匹配(这是针对Release Win32版本的,其中主项目禁用了该值(0),而它所依赖的项目在某些情况下启用了它)
由于我的主项目是一个依赖于CMake的实用程序项目,因此我没有C/C++属性部分。因此,我需要仅通过CMake选项来解决此问题。
是否有人可以指点我如何通过CMake设置Visual Studio选项?
2个回答

3

add_definitions已过时。请使用add_compile_definitionsCMakeLists.txt中指定迭代器调试级别。

add_compile_definitions($<$<CONFIG:Debug>:_ITERATOR_DEBUG_LEVEL=1>)

2
add_definitions(-D_ITERATOR_DEBUG_LEVEL=0) 

CMakeLists.txt中似乎有效


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接