vscode设置断点调试
摘要:本文在Ubuntu下配置vscode的断点调试步骤。
步骤1:
打开vscode,新建目录:.vscode,如果已存在可不用创建;
步骤2:
在.vscode目录创建tasks.json文件,内容如下:
{ "version": "2.0.0", "tasks": [ { "label": "vsdebug", "type": "shell", "command": "bash ./build.sh", // 脚本路径 "args": [], "group": { "kind": "build", "isDefault": true } } ] }
步骤3:
在.vscode目录创建launch.json文件,内容如下:
{ "version": "0.2.0", "configurations": [ { "name": "(gdb) 启动", "type": "cppdbg", "request": "launch", "program": "${workspaceFolder}/build/main", // 二进制文件路径 "args": [], "stopAtEntry": false, "cwd": "${fileDirname}", "environment": [], "externalConsole": false, "MIMode": "gdb", "setupCommands": [ { "description": "为 gdb 启用整齐打印", "text": "-enable-pretty-printing", "ignoreFailures": true } ], "preLaunchTask": "vsdebug" } ] }
步骤4:
创建文件main.cpp,书写源代码:
#include <iostream> int main() { std::cout << "hello world!" << std::endl; std::cout << "hello seres!" << std::endl; return 0; }
步骤5:
编写编译脚本build.sh和CMakeLists.txt
build.sh
#!/bin/bash if [ ! -d "build" ]; then mkdir build else rm -rf build/* fi cd build Local_Dir=$(cd "$(dirname "$0")"; pwd) echo "Now work at Dir: $Local_Dir" cmake .. make
CMakeLists.txt
cmake_minimum_required(VERSION 2.8) project(vsdebug) # 设置Debug调试模式,或Release模式 set(CMAKE_BUILD_TYPE "Debug") #打开后才能开启调试 # set(CMAKE_BUILD_TYPE "Release") set(CMAKE_CXX_FLAGS "-O0") #不要开启优化,否则断点无法命中 set(CMAKE_CXX_STANDARD 11) # 添加main.cpp,编译成可执行文件 add_executable(main main.cpp)
步骤6:
打断点,F5进行调试。
结果: