当前位置: 首页 > news >正文

MAC配置VScode中C++项目debug环境

文章目录

  • 配置步骤
  • 问题解决
    • Unable to start debugging. LLDB exited unexpectedly with exit code 137 (0x89).

配置步骤

在Mac上配置VS Code以进行C++调试涉及几个步骤:

  • 安装必要的工具:
    确保您已经安装了Visual Studio Code和C++插件。

  • 检查是否安装了Clang,可以通过在终端运行clang --version来验证。

  • 创建项目文件夹: 在终端中创建一个新的文件夹来存放您的项目,例如project,然后在其中创建一个子文件夹,如helloworld。

  • ⇧⌘P操作配置IntelliSense,选择Clang++选项。并编辑c_cpp_properties.json参考如下内容:

{"configurations": [{"name": "macos-clang-x64","includePath": ["${workspaceFolder}/**"],"macFrameworkPath": ["/System/Library/Frameworks","/Library/Frameworks"],"compilerPath": "/usr/bin/clang++","cStandard": "${default}","cppStandard": "${default}","intelliSenseMode": "macos-clang-x64","compilerArgs": [""]}],"version": 4
}
  • 配置tasks.json: 在VS Code中打开您的项目文件夹,然后转到终端 > 配置默认构建任务。选择C/C++ clang++ build active file选项。
  • 编写源代码: 创建一个新的C++文件,例如helloworld.cpp,并输入您的代码。
  • 配置launch.json: 转到调试视图并点击创建 launch.json 文件。选择C++ (GDB/LLDB),然后选择clang++ - 构建并调试活动文件。
  • 开始调试: 设置断点,然后点击绿色的调试按钮开始调试。

问题解决

Unable to start debugging. LLDB exited unexpectedly with exit code 137 (0x89).

  1. 更新VS Code和扩展:确保您的Visual Studio Code和所有相关扩展(特别是C/C++和CMake Tools)都是最新版本。
  2. 检查launch.json配置:确保launch.json文件中的配置正确无误,特别是program路径和其他调试设置。
  3. 重新启动VS Code:有时候,简单地重启VS Code可以解决问题。
  4. 检查LLDB版本:确保您安装的LLDB版本与您的操作系统和VS Code兼容。

相关文章:

  • ES6及更新版本的新特性
  • 劲爆!Kimi月之暗面可以接入微信,智能升级, 打造个性多Agent(二)
  • 深度学习原理
  • 在HTML中,如何正确使用语义化标签?
  • 医学图像预处理之z分数归一化
  • 如何在 Windows 10/11 上编辑 PDF [4 种简单方法]
  • 设计模式--动态代理
  • 2024年,收付通申请开通流程
  • C++数据格式化5 - uint转换成十六进制字符串二进制的data打印成十六进制字符串
  • kotlin之foreach跳出循环
  • GitLab项目组相关操作(创建项目组Group、创建项目组的项目、为项目添加成员并赋予权限)
  • element-plus的Tour 漫游式引导怎么去绑定Cascader 级联选择器或者它的内容 popper
  • flink学习-容错机制
  • PyMuPDF 操作手册 - 01 从PDF中提取文本
  • el-date-picker 有效时间精确到时分秒 且给有效时间添加标记
  • Android 初级面试者拾遗(前台界面篇)之 Activity 和 Fragment
  • android 一些 utils
  • ComponentOne 2017 V2版本正式发布
  • input实现文字超出省略号功能
  • JS数组方法汇总
  • Linux下的乱码问题
  • scala基础语法(二)
  • 闭包,sync使用细节
  • 前端代码风格自动化系列(二)之Commitlint
  • 如何正确配置 Ubuntu 14.04 服务器?
  • 我的zsh配置, 2019最新方案
  • 一些关于Rust在2019年的思考
  • 原生JS动态加载JS、CSS文件及代码脚本
  • 再谈express与koa的对比
  • 字符串匹配基础上
  • 06-01 点餐小程序前台界面搭建
  • ​批处理文件中的errorlevel用法
  • # Pytorch 中可以直接调用的Loss Functions总结:
  • # Redis 入门到精通(九)-- 主从复制(1)
  • # 透过事物看本质的能力怎么培养?
  • #Linux杂记--将Python3的源码编译为.so文件方法与Linux环境下的交叉编译方法
  • #php的pecl工具#
  • (11)MSP430F5529 定时器B
  • (android 地图实战开发)3 在地图上显示当前位置和自定义银行位置
  • (leetcode学习)236. 二叉树的最近公共祖先
  • (代码示例)使用setTimeout来延迟加载JS脚本文件
  • (解决办法)ASP.NET导出Excel,打开时提示“您尝试打开文件'XXX.xls'的格式与文件扩展名指定文件不一致
  • (四)进入MySQL 【事务】
  • (转) ns2/nam与nam实现相关的文件
  • (转)jQuery 基础
  • (转)大型网站架构演变和知识体系
  • .NET 4.0中使用内存映射文件实现进程通讯
  • .NET C# 使用 SetWindowsHookEx 监听鼠标或键盘消息以及此方法的坑
  • .net core 管理用户机密
  • .NET MVC之AOP
  • .NET 将多个程序集合并成单一程序集的 4+3 种方法
  • .net 设置默认首页
  • .NET8 动态添加定时任务(CRON Expression, Whatever)
  • .net8.0与halcon编程环境构建
  • .NET命令行(CLI)常用命令