Κοινή χρήση τεχνολογίας

[Linux] Χρησιμοποιήστε το gdb για τον εντοπισμό σφαλμάτων του πηγαίου κώδικα FFmpeg στην πλατφόρμα των Windows

2024-07-12

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

Το FFmpeg είναι μια βιβλιοθήκη πολυμέσων πολλαπλών πλατφορμών. Μερικές φορές χρειάζεται να αναπτυχθεί και να εντοπιστεί σφάλματα σε άλλες πλατφόρμες.

1. Εκτελέσιμο αρχείο

Για να διορθώσετε τον πηγαίο κώδικα FFmpeg χρησιμοποιώντας περιβάλλον Linux στην πλατφόρμα Windows, πρέπει να μεταγλωττίσετε και να δημιουργήσετε ένα αρχείο exe με επίθημα _g, ανατρέξτε στοffmpeg μεταγλώττιση .Κάτω από την πλατφόρμα των Windows, εάν θέλετε να χρησιμοποιήσετε τον εντοπισμό σφαλμάτων, θα πρέπει να προσθέσετε –toolchain=msvc κατά τη μεταγλώττιση του FFmepg για τη δημιουργία αρχείων pdb.
Εισαγάγετε την περιγραφή της εικόνας εδώ

2. εντοπισμός σφαλμάτων gdb

Χρησιμοποιήστε το msys2, ένα εικονικό περιβάλλον Linux, για εντοπισμό σφαλμάτων gdb, συμπεριφορά εντολών

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

Εισαγάγετε την περιγραφή της εικόνας εδώ
Εντολές που χρησιμοποιούνται συνήθως:

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

Χρησιμοποιήστε την εντολή λίστας
Εισαγάγετε την περιγραφή της εικόνας εδώ
Κοιτάξτε εδώ, το σημείο εισόδου της συνάρτησης βρίσκεται στην κύρια συνάρτηση του fftoolffmpeg.c και, στη συνέχεια, μπορείτε να το διορθώσετε προσθέτοντας ένα σημείο διακοπής.