• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录

碧海无波,细水长流

  • 博客园
  • 联系
  • 订阅
  • 管理

公告

View Post

关于VScode中GDB调试和cmake配合使用的方法

关于VScode调试GDB的说明

       Hello,各位看官好,小弟最近在做嵌入式的项目,那么嵌入式的项目有三个很重要的工具,一个就是VScode,一个就是GDB,还有一个就是CMake工具。但是如果只是单纯的用GDB调试会有一个问题,那就是没办法跟代码一起调试,所以我们需要将这三者配合起来使用。下面我就根据我自己的项目配合的来说一下怎么配置。

一、     关于CMAKE的配置方法

CMAKE是编译工具,因此需要调整两个部分,其一是修改开关CMAKE_BUILD_TYPE,简单来说就是将其设置成Debug,其二就是设置CMAKE_CXX_FLAGS_DEBUG,里面需要添加开关-g。

二、     关于VScode的配置方法

在VScode中,最核心的就是增加launch.json这个配置文件,这个文件所代表的就是我们调试时候所需要的命令。我们可以参照下图来填写。

{

1、     

2、        "version": "0.2.0",

3、     

4、        "configurations": [

5、            {

6、     

7、                "name": "(gdb) example",

8、     

9、                "type": "cppdbg",

10、   

11、              "request": "launch",

12、   

13、              "program": "${workspaceFolder}/build/bin/example", //此路径更改为最终生成的可执行文件路径以及可执行文件名称

14、   

15、              "args": ["calculate","add"],

16、   

17、              "stopAtEntry": false,

18、   

19、              "cwd": "${workspaceFolder}",

20、   

21、              "environment": [],

22、   

23、              "externalConsole":false,//将此处的true改为false,不然他会调用系统的终端进行现实

24、   

25、              "MIMode": "gdb",

26、   

27、              "setupCommands": [

28、   

29、                  {

30、   

31、                      "description": "Enable pretty-printing for gdb",

32、   

33、                      "text": "-enable-pretty-printing",

34、   

35、                      "ignoreFailures": true

36、   

37、                  }

38、   

39、              ],

40、   

41、          }

42、   

43、      ]

这里对参数做一个简要说明,比较常见的几个参数分别是program,args,stopAtEntry,externalConsole这几个变量。

Program:代表我们运行时候所代表的路径以及可执行文件

Args:代表我们运行时所代表着的参数,多个参数用逗号隔开

StopAtEntry:选择false代表我们可以手写断点,否则在main开始的时候停下来

externalConsole:选择false其不会在终端显示出来。

posted on 2022-09-21 21:54  碧海无波,细水长流  阅读(889)  评论(0)    收藏  举报

刷新页面返回顶部
 
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3