CMake编译时支持GDB调试

在linux环境下通过设置编译选项CXXFLAGS使程序可以支持GDB调试,在CMake构建的工程中也可以方便的实现。

对于C++:
在CMakeLists.txt文件中添加如下语句:

SET(CMAKE_BUILD_TYPE "Debug")
SET(CMAKE_CXX_FLAGS_DEBUG "$ENV{CXXFLAGS} -O0 -Wall -g2 -ggdb")
SET(CMAKE_CXX_FLAGS_RELEASE "$ENV{CXXFLAGS} -O3 -Wall")

对于C:
在CMakeLists.txt文件中添加如下语句:

SET(CMAKE_BUILD_TYPE "Debug")
SET(CMAKE_C_FLAGS_DEBUG "$ENV{CFLAGS} -O0 -Wall -g -ggdb")
SET(CMAKE_C_FLAGS_RELEASE "$ENV{CFLAGS} -O3 -Wall")

gdb调试中对于引用过的头文件,只能访问到头文件,访问不到相应的源文件,所以无法查看函数定义。至少对于c语言的调试是这样的。

posted on 2021-08-26 15:50  只争朝夕,不负韶华!  阅读(2138)  评论(0)    收藏  举报