我有一个在CMake 2.8.9上运行的项目,并使用Visual Studio 2008进行构建。在CMakeLists.txt中,我将调试配置的默认运行时库切换到MTd:
set(CMAKE_CXX_FLAGS_DEBUG "/MTd")
不幸的是,这一行还会导致切换标志" Debug Information Format"到"禁用",这意味着我无法调试我的项目。 : - (
如果我从CMakeLists.txt中删除该行,则运行时库为" MDd"以及"调试信息格式"是"程序数据库(/ Zi)"。有人知道原因或如何避免这个问题吗?有没有解决方法?是否可以通过CMake设置丢失的标志?
答案 0 :(得分:4)
您可能只想将该标志添加到已使用标志列表中,而不是使用单个标记/MTd
替换标志列表。
要将/MTd
附加到标记列表中,请使用
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MTd")