直接使用GDB在Ubuntu上调试C++ code,有时不是很方便,这里介绍下在Ubuntu上通过Visual Studio Code调试C++ code操作步骤,通过CMake编译。
安装所需依赖:
(1).在Ubuntu上安装Visual Studio Code最新稳定版本1.51.1;
(2).在VS Code中安装C++插件:C/C++ for Visual Studio Code;
(3).在VS Code中安装CMake插件:CMake Tools;
(4).在Ubuntu上安装GCC C/C++、GDB、CMake、make,推荐安装CMake版本3.15及以上。
调试Messy_Test(https://github.com/fengbingchun/Messy_Test )中的demo/CppBaseTest目录下code:VS Code中打开命令面板快捷键:Ctrl+Shift+P
(1).将prj/linux_cmake_CppBaseTest/CMakeLists.txt拷贝到demo/CppBaseTest目录下,并做调整,调整后的内容如下:
PROJECT(CppBaseTest)
CMAKE_MINIMUM_REQUIRED(VERSION 3.10)
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g -Wall -O2 -std=c11")
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g -Wall -O2 -std=c++11")
# suppornt C++14, when gcc version > 5.1, use -std=c++14 instead of c++1y
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g -Wall -O2 -std=c++1y")
# set support C++14
set(CMAKE_CXX_STANDARD 14)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)
MESSAGE(STATUS "path src files: ${PROJECT_SOURCE_DIR}")
SET(PATH_SRC_FILES ${PROJECT_SOURCE_DIR})
INCLUDE_DIRECTORIES(${PATH_SRC_FILES})
FILE(GLOB CPP_LIST ${PATH_SRC_FILES}/*.cpp)
FILE(GLOB C_LIST ${PATH_SRC_FILES}/*.c)
ADD_EXECUTABLE(CppBaseTest ${CPP_LIST} ${C_LIST})
TARGET_LINK_LIBRARIES(CppBaseTest pthread)
(2).将终端定位到demo/CppBaseTest目录下,执行”code .”命令,在当前目录打开VS Code,这将成为你的”workspace”;
(3).打开命令面板:输入或点击CMake:Select a Kit,然后点击GCC 5.4.0;
(4).打开命令面板:输入或点击CMake:Select Variant,然后点击Debug;
(5).打开命令面板:输入或点击CMake:Configure,查看OUTPUT窗口是否正常Configuring done和Generating done,如下图所示:
(6).打开命令面板:输入或点击CMake:Build,查看OUTPUT窗口是否正常显示”Build finished with exit code 0”,如下图所示:
(7).在CppBaseTest.cpp中设置一个断点,打开命令面板,输入或点击CMake:Debug,如下图所示,即可进行调试: