CMake标志更改调试配置

时间:2014-04-25 16:31:46

标签: c++ visual-studio cmake

我有一个在CMake 2.8.9上运行的项目,并使用Visual Studio 2008进行构建。在CMakeLists.txt中,我将调试配置的默认运行时库切换到MTd:

set(CMAKE_CXX_FLAGS_DEBUG "/MTd")

不幸的是,这一行还会导致切换标志" Debug Information Format"到"禁用",这意味着我无法调试我的项目。 : - (

如果我从CMakeLists.txt中删除该行,则运行时库为" MDd"以及"调试信息格式"是"程序数据库(/ Zi)"。有人知道原因或如何避免这个问题吗?有没有解决方法?是否可以通过CMake设置丢失的标志?

1 个答案:

答案 0 :(得分:4)

您可能只想该标志添加到已使用标志列表中,而不是使用单个标记/MTd替换标志列表。

要将/MTd附加到标记列表中,请使用

set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MTd")