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

news2024/12/28 1:48:15

文章目录

  • 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模式的可执行文件

之前在 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 常见参数说明

⭐️表示必须参数


                

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

idea Plugins 搜索不到插件

Settings — System Settings — HTTP Proxy,打开HTTP Proxy 页面,设置自动发现代理: 勾选Atuto-detect proxy settings,勾选Automatic proxy configuration URL,输入: https://plugins.jetbrains.com/id…

【Java】I/O流—缓冲流的基础入门和文件拷贝的实战应用

🌺个人主页:Dawn黎明开始 🎀系列专栏:Java ⭐每日一句:你能坚持到什么程度,决定你能达到什么高度 📢欢迎大家关注🔍点赞👍收藏⭐️留言📝 文章目录 一.&…

01 计算机图形学概述

什么是图形学 合成和操作视觉信息。 图形学的应用 游戏 电影 动画 模拟 设计 可视化 虚拟现实VR&增强现实AR 电子绘画 图形化UI 字体 图形学的挑战 思维上的挑战 创建与虚拟世界互动需要了解物理世界的各个方面新的计算方法,显示,技术 技术上…

MemcachedRedis构建缓存服务器 (主从,持久化,哨兵)

许多Web应用都将数据保存到 RDBMS中,应用服务器从中读取数据并在浏览器中显示。但随着数据量的增大、访问的集中,就会出现RDBMS的负担加重、数据库响应恶化、 网站显示延迟等重大影响。Memcached/redis是高性能的分布式内存缓存服务器,通过缓存数据库查询…

【Python 千题 —— 基础篇】菜品的价格

题目描述 题目描述 食堂今天准备了很多好吃的菜。“beef” 12 元一份;“rice” 1 元一份;“fish” 8 元一份;其它菜品 5 元一份。请你根据输入的字符串,使用 if-elif-else 语句判断该菜品需要花费多少钱。 输入描述 输入一个菜…

在gitlab中指定自定义 CI/CD 配置文件

文章目录 1. 介绍2. 配置操作3. 配置场景3.1 CI/CD 配置文件在当前项目step1:在当前项目中创建目录,编写流水线文件存放在该目录中step2:在当前项目中配置step3:运行流水线测试 3.2 CI/CD 配置文件位于外部站点上step1&#xff1a…

IP-guard WebServer RCE漏洞复现

0x01 产品简介 IP-guard是由溢信科技股份有限公司开发的一款终端安全管理软件,旨在帮助企业保护终端设备安全、数据安全、管理网络使用和简化IT系统管理。 0x02 漏洞概述 漏洞成因 在Web应用程序的实现中,参数的处理和验证是确保应用安全的关键环节…

OTA设计思路

什么是 Zigbee 协议? Zigbee 技术是一种连接距离短、功耗低、复杂程度低、数据传输量低的无线通信技术,其命名灵感源自于蜜蜂在群体中的信息传输。它主要通过网关与互联网进行通信,并嵌入各种智能设备,最终实现自动控制和远程控制…

【C++】STL容器适配器——queue类的使用指南(含代码使用)(18)

前言 大家好吖,欢迎来到 YY 滴C系列 ,热烈欢迎! 本章主要内容面向接触过C的老铁 主要内容含: 欢迎订阅 YY滴C专栏!更多干货持续更新!以下是传送门! 目录 一、queue 类——基本介绍二、queue 类…

绝对力作:解锁string的所有关键接口,万字深度解析!

W...Y的主页 😊 🍔前言: 通过博主的上篇文章,我相信大家已经认识了STL并且已经迫不及待想学习了,现在我们就走近STL的第一种类——string。 目录 为什么学习string类? C语言中的字符串 标准库中的str…

【T3】畅捷通T3采购管理模块反结账,提示:本年数据已经结转,不能取消结账。

【问题描述】 使用畅捷通T3软件过程中, 针对以前年度进行反结账过程中,遇到采购管理模块取消12月份结账, 提示:本年数据已经结转,不能取消结账。 【分析需求】 按正常逻辑,需要清空新年度数据&#xff0c…

向量的范数、矩阵的范数

向量的范数 p-范数 常用的0-范数、1-范数、2-范数、无穷-范数其实都是p-范数的特殊情形。 0-范数 当p0时,表示0-范数。它比较特殊,本质是一种计数,表示向量中非0元素的个数。 1-范数(也称L1范数) 当p1时&#xff…

多模态并不是智能的核心

多模态指的是通过多种感知方式(如视觉、听觉、语音等)来处理和理解信息。虽然多模态对于智能系统的发展和提高用户体验非常重要,但它并不是智能的核心。 智能的核心是指系统具备自主学习、推理和决策的能力。智能系统需要能够通过分析和理解大…

【剑指offer|图解|双指针】训练计划 I + 删除有序数组中的重复项

🌈个人主页:聆风吟 🔥系列专栏:数据结构、算法模板 🔖少年有梦不应止于心动,更要付诸行动。 文章目录 📋前言一. ⛳️训练计划 I二. ⛳️查找总价格为目标值的两个商品三. ⛳️删除有序数组中的…

Anaconda Powershell Prompt和Anaconda Prompt的区别

先说结论:主要功能应该一样。区别在于powershell支持的命令更多。比如查询路径的命令pwd和列表命令ls。 Anaconda PowerShell Prompt和Anaconda Prompt是Anaconda发行版中两个不同的命令提示符工具。 Anaconda Prompt是Anaconda发布的默认命令提示符工具&#xff0…

学c语言,从基础到深入,有相关书籍可以看吗?

学c语言,从基础到深入,有相关书籍可以看吗? 以下建议是结合本人工作20年的经历和感受总结出来的,每个人所处的环境和情况不太一样,仅供参考。 1. 首先建议你在学习C语言前要了解下这个语言的作用,使用场景…

pytorch基础语法问题

这里写目录标题 pytorch基础语法问题shapetorch.ones_like函数和torch.zeros_like函数y.backward(torch.ones_like(x), retain_graphTrue)torch.autograd.backward参数grad_tensors: z.backward(torch.ones_like(x))来个复杂例子z.backward(torch.Tensor([[1., 0]])更复杂例子实…

机器/深度学习模型最优化问题详解及优化算法汇总

前言 其实最优化问题,从小学开始学习数学的时候就可以说已经接触到了,在我印象中有个问题,用一个平底锅煎饼,每次只能放2只饼,煎一只饼要2分钟(正反各用1分钟),煎三只饼要几分钟。这…

C语言C位出道心法(四):文件操作

C语言C位出道心法(一):基础语法 C语言C位出道心法(二):结构体|结构体指针|链表 C语言C位出道心法(三):共用体|枚举 C语言C位出道心法(四):文件操作 一:C语言操作文件认知升维: 二:文件打开 三:文件读写操作 忙着去耍帅,后期补充完整.................................

力扣第1035题 不相交的线中等 c++ (最长公共子序列) 动态规划 附Java代码

题目 1035. 不相交的线 中等 相关标签 数组 动态规划 在两条独立的水平线上按给定的顺序写下 nums1 和 nums2 中的整数。 现在,可以绘制一些连接两个数字 nums1[i] 和 nums2[j] 的直线,这些直线需要同时满足满足: nums1[i] nums2[j]…