QtCreator和CMake:调试发布版本

时间:2018-06-04 08:55:53

标签: c++ debugging cmake gdb qt-creator

我想调试一个用QtCreator发布的CMake项目版本。我只需要能够通常逐步执行代码并在断点处停止(我知道如果有优化,我将无法浏览变量并且步进可能不稳定)。

我尝试使用-DCMAKE_BUILD_TYPE = Release重建项目,并将-Og,-O1,-O2中的任何一个添加到CMakeLists.txt中的add_compile_options()(使用gcc在linux中构建)。但是,当我在QtCreator中按下debug时,我收到消息“这似乎不是”Debug“build。按文件名和行号设置断点可能会失败。”事实上,代码不会在任何断点处停止。

我认为这应该可行,但我想知道QtCreator是否知道我使用-DCMAKE_BUILD_TYPE = Release运行CMake并且即使我在代码中添加-Og也不会让我调试。是这样的吗?我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

要获得优化和可调试版本,您可以将CMAKE_BUILD_TYPE设置为RelWithDebInfo