vscode怎样单步调试
发表于:2025-12-03 作者:千家信息网编辑
千家信息网最后更新 2025年12月03日,小编给大家分享一下vscode怎样单步调试,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!vscode如何单步调试?vsco
千家信息网最后更新 2025年12月03日vscode怎样单步调试
小编给大家分享一下vscode怎样单步调试,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
vscode如何单步调试?
vscode单步调试
VScode配置
0.快捷键
Ctrl + ` 打开默认终端;Ctrl + Shift + ` 新建新的终端;Ctrl + Shift + Y 打开调试控制台,然后再自行切换终端选项;ps: ` 在键盘数字1的左边。
相关推荐:vscode入门教程
1.安装clang
sudo apt-get install clang
2.VScodeDebug
插件参考链接但大型的工程配置还是比较复杂,很多教程都是针对单个cpp文件进行配置,这里对vscode配置一般情况的cpp调试做个记录:
1.整体思路就是首先按照常规方法进行mkdir build && cd build && cmake.. && make (这一步可以在vscode的终端完成,也可以在系统终端完成,无所谓。但是为了少开点界面就在vscode里面完成比较好)生成可执行文件,然后使用vscode进行单步。
2. 配置launch文件:点击左侧边栏的Debug图标(Ctrl+Shift+D),再点上方的齿轮图标configure,点击default configure就能自动生成launch.json文件。进入launch文件界面可以看到路径为.vscode/launch.json/Launch Targets/(gbd)Launch.
3.修改launch文件:
{ "version": "0.2.0", "configurations": [ { "name": "(gdb) Launch", "type": "cppdbg", "request": "launch", "program": "${workspaceFolder}/build/app/testMonoBA", //此路径更改为最终生成的可执行文件路径以及可执行文件名称 "args": [], "stopAtEntry": false, "cwd": "${workspaceFolder}", "environment": [], "externalConsole":false,//将此处的true改为false,不然他会调用系统的终端进行现实 "MIMode": "gdb", "setupCommands": [ { "description": "Enable pretty-printing for gdb", "text": "-enable-pretty-printing", "ignoreFailures": true } ], } ]}4.修改CMakeLists.txt文件:
cmake_minimum_required(VERSION 2.8)project(slam_demo)set(DEFAULT_BUILD_TYPE "Debug") #修改处,讲release改为debug,也可以直接删除if (NOT CMAKE_BUILD_TYPE) message(STATUS "Setting build type to '${DEFAULT_BUILD_TYPE}' as none was specified.") set(CMAKE_BUILD_TYPE "${DEFAULT_BUILD_TYPE}" CACHE STRING "Choose the type of build." FORCE) # Set the possible values of build type for cmake-gui set_property(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS "Debug" "Release" "MinSizeRel" "RelWithDebInfo")endif ()set(CMAKE_CXX_FLAGS "-std=c++11")FIND_PACKAGE( OpenMP REQUIRED)if(OPENMP_FOUND) message("OPENMP FOUND") ADD_DEFINITIONS(-DUSE_OPENMP) set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}") set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${OpenMP_EXE_LINKER_FLAGS}")endif()#set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS} -Wno-reorder" CACHE STRING "" FORCE)#set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS} -DNDEBUG -Wno-reorder -O2" CACHE STRING "" FORCE)set(CMAKE_CXX_FLAGS_DEBUG "{CMAKE_CXX_FLAGS} -o0 -ggbd") #添加语句add_compile_options(-g) #添加语句list(APPEND CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake")option(BUILD_APPS "Build APPs for slam course" YES)option(BUILD_TESTS "Build test for slam course" No)# third party libs# eigenfind_package(Eigen REQUIRED)include_directories(${EIGEN_INCLUDE_DIR})# opencvfind_package(OpenCV 4 REQUIRED)include_directories(${OpenCV_INCLUDE_DIRS})# glogfind_package(Glog REQUIRED)include_directories(${GLOG_INCLUDE_DIRS})# sophusinclude_directories(${PROJECT_SOURCE_DIR}/thirdparty/Sophus)include_directories(${PROJECT_SOURCE_DIR})add_subdirectory(frontend)add_subdirectory(backend)add_subdirectory(utils)if (BUILD_APPS) add_subdirectory(app)endif ()if (BUILD_TESTS) enable_testing() add_subdirectory(test)endif ()5.完成以上后,重新进行编译,然后vscode中的调试一栏下面的就不再式灰色可以进行单步调试。
如图:
3.Cmake支持gdb调试的方法
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")add_compile_options(-g) #添加语句以上是"vscode怎样单步调试"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!
文件
终端
配置
篇文章
语句
路径
生成
内容
图标
教程
方法
界面
系统
参考
复杂
无所谓
不怎么
入门教程
单个
大部分
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
多倍通管理服务器如何复位
网络安全法对保险的规定
sucm怎么进服务器
mysql数据库统计
dell服务器740
东方易网络技术算命
epic写入数据库时遭到错误
网络安全行业走校招和社招
一台服务器接几条宽带
深圳疆界互联网科技有限公司
戴尔t140服务器咋样
数据库建模框架
arma3服务器怎么进不去
石油化工概算应用数据库2017
csgo网络正常连接服务器失败
dnf服务器无法启动
山东少儿编程平台软件开发
加格达奇天气预报软件开发
界面react框架 数据库
数据库的数据是列表吗
通信与网络技术课件
智能互联网络技术课程
服务器无法启动iis
人们在思考 网络技术发展
数据复杂性是数据库的特点吗
网络安全校园视频
游戏服务器在电信
mysql怎么复制数据库一张表
戴尔r920服务器管理口
有bug等于服务器稳定