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

【Linux】Windows平台使用gdb调试FFmpeg源码

FFmpeg是一个跨平台的多媒体库,有时需要在别的平台上进行开发和调试,记录一下在linux环境下使用gdb来调试FFmpeg源码的基本方式

1.可执行文件

在windows平台使用linux环境来调试FFmpeg源码,需要编译生成一个后缀有_g的exe文件,参考ffmpeg编译。在windows平台下,如果想要使用vs调试,需要在编译FFmepg时添加–toolchain=msvc来生成pdb文件
在这里插入图片描述

2. gdb调试

使用msys2这个虚拟的linux环境来进行gdb调试,命令行为

gdb ffmpeg_g.exe  // 开始启用gdb
set args -i output.h264 test.yuv // 设置参数,输入为output.h264,输出为test.yuv
start // 开始调试

在这里插入图片描述
常用命令:

n // next, 逐过程
s // step, 逐语句
list // 显示代码
b n // 设置第n行一个断点
jump n // 跳转到第n行

使用list命令
在这里插入图片描述
这里看,函数的入口位于fftool\ffmpeg.c的main函数,之后加上断点就可以调试了

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 【C++】类中的六个默认成员函数(构造函数、析构函数、拷贝构造函数、复制重载函数等)
  • MySQL 数据库基础概念
  • 任务需求准确度量;高效计算任务调度;算力资源统一度量
  • 新火种AI|微软和苹果放弃OpenAI董事会观察员席位
  • Centos新手问题——yum无法下载软件
  • 【两大3D转换SDK对比】HOOPS Exchange VS. CAD Exchanger
  • MongoDB - 集合和文档的增删改查操作
  • 【LeetCode】面试题 16.21. 交换和
  • CSS 【详解】样式选择器(含ID、类、标签、通配、属性、伪类、伪元素、Content属性、子代、后代、兄弟、相邻兄弟、交集、并集等选择器)
  • Clean My Mac X破解版,让您的电脑跟新的一样好用
  • 【栈和队列OJ题】
  • 33 IRF配置思路
  • Python爬虫:BeautifulSoup的基本使用方法!
  • Linux磁盘-创建分区
  • MySQL慢查询日志详解与性能优化指南
  • JS中 map, filter, some, every, forEach, for in, for of 用法总结
  • 2017-08-04 前端日报
  • Angular6错误 Service: No provider for Renderer2
  • const let
  • Docker: 容器互访的三种方式
  • JavaScript 无符号位移运算符 三个大于号 的使用方法
  • java概述
  • k8s如何管理Pod
  • React中的“虫洞”——Context
  • SegmentFault 技术周刊 Vol.27 - Git 学习宝典:程序员走江湖必备
  • SwizzleMethod 黑魔法
  • Traffic-Sign Detection and Classification in the Wild 论文笔记
  • 基于Android乐音识别(2)
  • 可能是历史上最全的CC0版权可以免费商用的图片网站
  • 排序算法之--选择排序
  • 一些css基础学习笔记
  • 一些关于Rust在2019年的思考
  • 06-01 点餐小程序前台界面搭建
  • 7行Python代码的人脸识别
  • shell使用lftp连接ftp和sftp,并可以指定私钥
  • (4) openssl rsa/pkey(查看私钥、从私钥中提取公钥、查看公钥)
  • (Java数据结构)ArrayList
  • (层次遍历)104. 二叉树的最大深度
  • (附源码)node.js知识分享网站 毕业设计 202038
  • (十七)devops持续集成开发——使用jenkins流水线pipeline方式发布一个微服务项目
  • (心得)获取一个数二进制序列中所有的偶数位和奇数位, 分别输出二进制序列。
  • (一)Mocha源码阅读: 项目结构及命令行启动
  • (转)C语言家族扩展收藏 (转)C语言家族扩展
  • (转)Oracle存储过程编写经验和优化措施
  • .Net Core 微服务之Consul(二)-集群搭建
  • .NET Core引入性能分析引导优化
  • .net 反编译_.net反编译的相关问题
  • .net 后台导出excel ,word
  • .NET/C# 获取一个正在运行的进程的命令行参数
  • .NET命名规范和开发约定
  • .NET运行机制
  • @configuration注解_2w字长文给你讲透了配置类为什么要添加 @Configuration注解
  • @data注解_SpringBoot 使用WebSocket打造在线聊天室(基于注解)
  • @EventListener注解使用说明
  • @TableLogic注解说明,以及对增删改查的影响