vscode怎样单步调试
发表于:2024-11-30 作者:千家信息网编辑
千家信息网最后更新 2024年11月30日,小编给大家分享一下vscode怎样单步调试,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!vscode如何单步调试?vsco
千家信息网最后更新 2024年11月30日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安全错误
数据库的锁怎样保障安全
网络安全绘画一等奖高质量初中
网络安全与应急管理工作
区块链大数据网络安全概念股
网络安全 呆哥是谁
软件开发工程师外包
捕鱼大作战服务器维护什么原因
魔兽私服数据库
烟台金网软件开发公司
画服务器后原生数据会重置吗
职中网络技术
检察院 网络安全
北京广夏网络技术
红石服务器观赏图
刀片和机架服务器
运营商网络安全视频
qq飞车体验服是什么服务器
考勤服务器英文
网络技术小学劳技论文
江西省中小学网络安全答题
安天网络安全应急处理中心
战地1刷分服务器
违反网络安全的法律依据
软件开发方案模版
汽车选号软件开发
怎样设置网络打印服务器共享
南京小型软件开发
查看数据库表大小的语句
安达软件开发商
网络安全实施管理的行政机关
网络安全硬件研发