Compartir tecnología

[Linux] Utilice gdb para depurar el código fuente de FFmpeg en la plataforma Windows

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

FFmpeg es una biblioteca multimedia multiplataforma. A veces es necesario desarrollarla y depurarla en otras plataformas. Registre el método básico de uso de gdb para depurar el código fuente de FFmpeg en un entorno Linux.

1. archivo ejecutable

Para depurar el código fuente de FFmpeg utilizando el entorno Linux en la plataforma Windows, debe compilar y generar un archivo exe con el sufijo _g, consultecompilar ffmpeg .En la plataforma Windows, si desea utilizar vs depuración, debe agregar –toolchain=msvc al compilar FFmepg para generar archivos pdb.
Insertar descripción de la imagen aquí

2. depuración de gdb

Utilice msys2, un entorno virtual de Linux, para la depuración de gdb y el comportamiento de los comandos

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

Insertar descripción de la imagen aquí
Comandos de uso común:

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

Usar el comando de lista
Insertar descripción de la imagen aquí
Mire aquí, el punto de entrada de la función se encuentra en la función principal de fftoolffmpeg.c, y luego puede depurarlo agregando un punto de interrupción.