如何将 _ITERATOR_DEBUG_LEVEL 添加到 CMake?
Posted
技术标签:
【中文标题】如何将 _ITERATOR_DEBUG_LEVEL 添加到 CMake?【英文标题】:How to add _ITERATOR_DEBUG_LEVEL to CMake? 【发布时间】:2019-01-18 01:02:30 【问题描述】:我是 CMake 的新手,我想将 _ITERATOR_DEBUG_LEVEL 设置为 0 用于发布构建,将 2 用于调试构建,以解决尝试编译依赖于其他项目的项目时出现的问题。
错误:
_iterator_debug_level 值 '2' 与值 '0' 不匹配(这是用于发布 Win32 版本,其中主项目的值 disabled(0) 并且它所依赖的项目由于某种原因启用了它,某处)
我在主项目中没有 C/C++ 属性部分,因为它是一个严重依赖 CMake 的实用程序项目。因此我只需要通过 CMake 选项来解决这个问题。
谁能指出我通过 CMake 设置 Visual Studio 选项的方法?
【问题讨论】:
【参考方案1】:add_definitions(-D_ITERATOR_DEBUG_LEVEL=0)
在 CMakeLists.txt 中似乎可以工作
【讨论】:
以上是关于如何将 _ITERATOR_DEBUG_LEVEL 添加到 CMake?的主要内容,如果未能解决你的问题,请参考以下文章
错误 LNK2038:检测到“_ITERATOR_DEBUG_LEVEL”不匹配:值“2”与 XX.obj 中的值“0”不匹配
在 Visual Studio 2015 中使用 _ITERATOR_DEBUG_LEVEL 0 的字符串流访问冲突
Visual Studio 中的 _ITERATOR_DEBUG_LEVEL 错误,接受的解决方案不起作用