学习OpenCV(蝴蝶书/C++)相关——2.MacOS下使用LLDB调试cpp程序

news/2024/5/19 23:47:35/文章来源:https://blog.csdn.net/Castlehe/article/details/134303774

文章目录

  • 1. VScode中的调试
  • 2. 配置VSCode中C++的调试(以OpenCV为例)
    • 2.1 创建适用于C++的.launch文件
    • 2.2 常见参数说明
    • 2.3 调试OpenCV的.launch文件示例
      • 2.3.1 .launch文件demo
      • 2.3.2 Debug模式的可执行文件
  • 3. 联合task.json文件一起使用
    • 3.1 创建tasks.json和launch.json文件
    • 3.2 tasks.json和launch.json示例

之前在 mac下vscode配置c++环境用过简单的launch.json的配置。

但是不足以支撑我这里调用OpenCV这些第三方库的调试,因此认真看了一下。

1. VScode中的调试

当不创建launch.json,直接点击左侧运行和调试时,

在这里插入图片描述

在有CMakeFiles的情况下,可以看到输出信息如下:
在这里插入图片描述
其实还是先用cmake生成了debug模式的目标代码,同时也link了,其实就是生成了DisplayImage的可执行文件。

如果删除CMakeFiles,则输出信息如下:
在这里插入图片描述
其实是先调用clang++来生成可执行文件。

因此,VSCode中调试C++程序本质上还是先生成可执行文件,然后使用MacOS默认的调试器LLDB进行调试。
因此,需要使用launch.json对调试进行一些配置。

与gdb的调试过程是类似的,针对的都是debug模式下生成的可执行文件,详见:C++——linux下使用gcc或者cmake进行c++程序开发中3.1 常用调试命令参数 部分

2. 配置VSCode中C++的调试(以OpenCV为例)

在VSCode中,.launch文件是用来配置debugger的,位于项目的.vscode文件夹中。如果要启动调试过程,则必须把要调试的可执行文件的路径填入program字段中。

2.1 创建适用于C++的.launch文件

在这里插入图片描述
按照上述图示的①②③分别点击,然后ctrl+S保存,就可以得到以下界面:
在这里插入图片描述
由于创建了一个.launch配置文件,因此左上角是可以选择不同的.launch配置文件。

2.2 常见参数说明

⭐️表示必须参数

{"version": "0.2.0","configurations": [{

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_190698.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Bug】Python利用matplotlib绘图无法显示中文解决办法

一,问题描述 当利用matplotlib进行图形绘制时,图表标题,坐标轴,标签中文无法显示,显示为方框,并报错 运行窗口报错: 这是中文字体格式未导入的缘故。 二,解决方案 在代码import部…

大数据Doris(二十一):数据导入演示

文章目录 数据导入演示 一、启动zookeeper集群(三台节点都启动) 二、启动hdfs集群

05预测识别-依托YOLO V8进行训练模型的识别——对视频中的目标进行跟踪统计

上文中详细介绍了如何对视频进行抽帧,并对帧的图像进行目标识别。但在日常工作中,我们也会遇到需要对目标进行跟踪统计的情况,比如我们需要连续统计某一类目标有多少个的时候,如果单纯从帧中抽取图像的话,系统将无法判断是否为同一目标,从而造成目标数量统计的重复,导致…

25期代码随想录算法训练营第十四天 | 二叉树 | 递归遍历、迭代遍历

目录 递归遍历前序遍历中序遍历后序遍历 迭代遍历前序遍历中序遍历后序遍历 递归遍历 前序遍历 # Definition for a binary tree node. # class TreeNode: # def __init__(self, val0, leftNone, rightNone): # self.val val # self.left left # …

数据分析实战 | 多元回归——广告收入数据分析

目录 一、数据及分析对象 二、目的及分析任务 三、方法及工具 四、数据读入 五、数据理解 六、数据准备 七、模型构建 八、模型预测 九、模型评价 一、数据及分析对象 CSV格式的数据文件——“Advertising.csv” 数据集链接:https://download.csdn.net/d…

自主开发刷题应用网站H5源码(无需后端无需数据库)

该应用使用JSON作为题库的存储方式,层次清晰、结构简单易懂。 配套的word模板和模板到JSON转换工具可供使用,方便将题库从word格式转换为JSON格式。 四种刷题模式包括顺序刷题、乱序刷题、错题模式和背题模式,可以根据自己的需求选择适合的模…

solidworks对电脑要求高吗?2023solidworks配置要求

solidworks对电脑要求高吗?SolidWorks是一款功能强大的三维CAD软件,对电脑配置有一定的要求。一般来说,运行SolidWorks需要的电脑配置包括较高的处理器性能、足够的内存和存储空间,以及一块性能良好的显卡。此外,对于大…

“目标值排列匹配“和“背包组合问题“的区别和leetcode例题详解

1 目标值排列匹配 1.1 从目标字符串的角度来看,LC139是一个排列问题,因为最终目标子串的各个字符的顺序是固定的? 当我们从目标字符串 s 的角度来看 LC139 “单词拆分” 问题,确实可以认为它涉及到排列的概念,但这种…

Leetcode2834. 找出美丽数组的最小和

Every day a Leetcode 题目来源:2834. 找出美丽数组的最小和 解法1:贪心 从最小正整数 1 开始枚举,设当前数为 num,如果 nums 里没有 target - num,就说明可以添加 num,依次填满直到有 n 个数即可。 用…

Kibana使用Watcher监控服务日志并发送飞书报警(Markdown)

Watcher是什么 Kibana Watcher 是 Elasticsearch 的监控和告警工具,它允许你设置和管理告警规则以监控 Elasticsearch 数据和集群的状态。Kibana Watcher 可以监测各种指标和数据,然后在满足特定条件时触发警报。它提供了一种强大的方式来实时监控 Elas…

分类预测 | Matlab实现PSO-LSTM粒子群算法优化长短期记忆神经网络的数据多输入分类预测

分类预测 | Matlab实现PSO-LSTM粒子群算法优化长短期记忆神经网络的数据多输入分类预测 目录 分类预测 | Matlab实现PSO-LSTM粒子群算法优化长短期记忆神经网络的数据多输入分类预测分类效果基本描述程序设计参考资料 分类效果 基本描述 1.Matlab实现PSO-LSTM粒子群算法优化长短…

vscode 终端进程启动失败: shell 可执行文件“C:\Windows\System32\WindowsPower

vscode 终端进程启动失败: shell 可执行文件“C:\Windows\System32\WindowsPower 第一次用vscode,然后遇到这个问题,在设置里搜索 terminal.integrated.defaultProfile.windows 将这里的null改成"Command Prompt" 重启就可以了

SQL必知会(二)-SQL查询篇(3)-过滤数据

第4课、过滤数据 WHERE&#xff1a;过滤条件 使用 WHERE 子句 指定搜索条件进行过滤。 WHERE 子句操作符 表4-1 WHERE 子句操作符 操作符说明操作符说明等于>大于< >不等于>大于等于!不等于!>不大于<小于BETWEEN在指定的两个值之间<小于等于IS NULL为…

n-gram语言模型——文本生成源码

n-gram语言模型——文本生成源码 n-gram模型的基本原理 文本生成的步骤 1. 准备和分词 2. 构建n-gram模型 3. 平滑技术的应用 4. 生成文本 源码 在自然语言处理的领域中&#xff0c;n-gram语言模型是一种基础而强大的工具。它通过考虑词汇的序列来预测文本内容&#xff…

告别龟速,从GitHub快速下载项目的技巧分享,简单又高效!

《博主简介》 小伙伴们好&#xff0c;我是阿旭。专注于人工智能AI、python、计算机视觉相关分享研究。 ✌更多学习资源&#xff0c;可关注公-仲-hao:【阿旭算法与机器学习】&#xff0c;共同学习交流~ &#x1f44d;感谢小伙伴们点赞、关注&#xff01; 《------往期经典推荐--…

深眸科技聚焦3D机器视觉技术,从技术形态到应用前景实现详细分析

机器视觉技术的不断升级&#xff0c;使得对二维图像的处理逐渐扩展到了更复杂的三维领域&#xff0c;形成了3D机器视觉。3D机器视觉是机器视觉的重要应用领域之一&#xff0c;通过计算机能够在短时间内处理视觉传感器采集的图像信号&#xff0c;从而获得目标对象的三维信息。 …

同城跑腿服务预约小程序的作用如何

无论是互联网服务化加快还是前几年疫情冲击&#xff0c;在同城生活服务场景中出现了很多商机&#xff0c;如外卖跑腿、校园跑腿、代买代送等&#xff0c;无论公司还是个人都借势不断提升自己品牌的影响力&#xff0c;并且依赖朋友圈不断提升生意营收。 同城跑腿品牌不少&#…

Vatee万腾的数字化掌舵:Vatee科技决策力引领创新风潮

在当今数字时代的大潮中&#xff0c;Vatee万腾凭借其卓越的科技决策力&#xff0c;如一位智慧的舵手&#xff0c;引领着数字化创新的风潮。 Vatee万腾不仅仅是一家科技公司&#xff0c;更是一个数字化未来的构想者。其数字化愿景超越了传统&#xff0c;通过科技决策力的引领&am…

线性代数 | 矩阵运算 加减 数乘 矩阵的幂运算

文章目录 1 矩阵加减和数乘2 矩阵与矩阵的乘法2.1 相乘条件&#xff1a;看中间&#xff0c;取两头2.2 相乘计算方法 3 矩阵的幂3.1 观察归纳法3.2 邻项相消法3.3 化为对角 4 判断是否可逆&#xff08;证明题或者要求求出逆矩阵&#xff09;4.1 直接观察4.2 由定义式推得4.2.1 待…

进阶课6——基于Seq2Seq的开放域生成型聊天机器人的设计和开发流程

情感聊天机器人通常属于开放领域&#xff0c;用户可以与机器人进行各种话题的互动。例如&#xff0c;微软小冰和早期的AnswerBus就是这种类型的聊天机器人。基于检索的开放领域聊天机器人需要大量的语料数据&#xff0c;其开发流程与基于任务型的聊天机器人相似&#xff0c;而基…