【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函数,之后加上断点就可以调试了

相关推荐

  1. 使用gdb调试QEMU模拟的RISC-V平台程序

    2024-07-12 08:48:03       54 阅读
  2. GDB调试

    2024-07-12 08:48:03       27 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-12 08:48:03       67 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-12 08:48:03       72 阅读
  3. 在Django里面运行非项目文件

    2024-07-12 08:48:03       58 阅读
  4. Python语言-面向对象

    2024-07-12 08:48:03       69 阅读

热门阅读

  1. HTTP3.0

    2024-07-12 08:48:03       24 阅读
  2. notes for datawhale 2th summer camp NLP task1

    2024-07-12 08:48:03       26 阅读
  3. 配置 Node.js 内存限制

    2024-07-12 08:48:03       23 阅读
  4. tomcat的安装和解析

    2024-07-12 08:48:03       25 阅读
  5. Sentieon应用教程:本地使用-Quick_start

    2024-07-12 08:48:03       26 阅读
  6. Django ORM中的Q对象

    2024-07-12 08:48:03       26 阅读
  7. 基于python实现并编译提升cpu与内存使用率的脚本

    2024-07-12 08:48:03       24 阅读
  8. C-MAPSS数据集-RUL剩余寿命预测

    2024-07-12 08:48:03       24 阅读
  9. Linux workqueue介绍

    2024-07-12 08:48:03       20 阅读
  10. C++异常处理throw try catch

    2024-07-12 08:48:03       24 阅读
  11. LiteOS系统的软件定时器

    2024-07-12 08:48:03       23 阅读
  12. Codeforces Round #956 (Div. 2) and ByteRace 2024

    2024-07-12 08:48:03       28 阅读