emacs单步调试ffmpeg

本文介绍如何使用Emacs结合GDB调试FFmpeg项目中的ffplay组件。首先通过配置选项编译带有调试信息的ffplay,并使用readelf验证调试信息的存在。随后详细展示了在Emacs中启动GDB进行调试的过程,包括设置断点和运行测试文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

试了一下emacs+gdb,很好很强大
1. 编译出带调试信息的ffplay, 需要在configure中打上 --enable-debug 与 --disable-optimizations这两个选项
查看是否己加入调试信息用readelf
sun@ubuntu:~/code/ffmpeg-1.0$ readelf -S ./ffplay_g 
  1. [27] .debug_aranges PROGBITS 00000000 8505a8 0056e0 00 0 0 8
  2. [28] .debug_info PROGBITS 00000000 855c88 af99d0 00 0 0 1
  3. [29] .debug_abbrev PROGBITS 00000000 134f658 061cbc 00 0 0 1
  4. [30] .debug_line PROGBITS 00000000 13b1314 1014ba 00 0 0 1
若出现类似debug_info debug_line的就说明己加入调试信息

2.调试
a. 打开emacs, 按键M-x, 输入gdb,Run gdb (like this): gdb --annotate=3 ffplay 改为ffplay_g

b. 这会弹出gdb窗口, 按键M-x, 输入gdb-many-windows

c.这会打开源文件窗口和变量窗口等,
gdb窗口下输入
(gdb) b main
(gdb) r ../video/test.mp4

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值