20230828 08h48m11s grim

Mencetak Hasil Backtrace saat Menggunakan GDB.

Kemarin, 27 Agustus 2023, saya membuat issue pada salah satu repositori pustaka / library di GitHub. Oleh pemilik repositori, saya di minta untuk melampirkan hasil backtrace saat melakukan debug dengan gdb. Baru saya sadari, saya melampirkan hasil backtrace dengan agak kurang rapi, karena saya hanya menyalin output backtrace ke halaman kosong menggunakan NeoVim.

Ternyata ada cara yang lebih mudah untuk mencetak hasil backtrace-nya, teman-teman. Hari ini akan kita tunjukan bagaimana caranya.

A. Persiapan.

Berikut ini adalah beberapa hal yang bisa dipersiapkan.

  1. Tool gdb, seharusnya setiap distro GNU/Linux menyediakan paket ini.
  2. Program / aplikasi yang ingin kita debug.

B. Langkah-langkah.

Berikut ini adalah beberapa langkah yang bisa kita jalankan.

1. Jalankan gdb untuk men-debug program / aplikasi.

Kita bisa menggunakan perintah berikut ini.

$ gdb /path/to/program

// contoh pada kasus saya.

$ gdb ./build/examples/tinywl/tinywlCode language: Shell Session (shell)
20230828 08h18m26s grim

Mulai masuk pada prompt gdb.

2. Mengaktifkan / meng-enable logging pada gdb.

Kita perlu mengaktifkan / meng-enable logging pada gdb. Kita bisa menggunakan perintah berikut ini.

(gdb) set logging enabled onCode language: Shell Session (shell)
20230828 08h25m11s grim

Setelah kita aktifkan / enable, output debug akan diteruskan pada berkas gdb.txt

3. Mencetak backtrace.

Untuk mencetak backtrace, kita hanya perlu menjalankan perintah “bt” atau “bt full” . Output dari perintah-perintah itu akan diteruskan pada berkas gdb.txt.

(gdb) btCode language: Shell Session (shell)
(gdb) bt fullCode language: Shell Session (shell)
20230828 08h34m54s grim

Contoh hasil backtrace.

4. Keluar dari prompt gdb dan mengecek hasil backtrace.

Setelah kita rasa cukup, kita bisa keluar dari prompt gdb dengan perintah quit atau “q”.

(gdb) qCode language: Shell Session (shell)

Kita bisa langsung mengecek hasil backtrace pada berkas gdb.txt yang sudah kita dapatkan.

20230828 08h48m11s grim

Contoh hasil backtrace pada gdb.txt yang tercetak.

Referensi dan kredit.

Berikut ini adalah referensi dan kredit untuk bahasan kita kali ini.

  1. Post pada laman stackoverflow terkait cara mencetak hasil output gdb ke berkas.
  2. Jawaban Husin Alhaj Ahmade pada post terkait cara mencetak hasil output gdb ke berkas.
  3. Dokumen daring terkait logging pada gdb.

Penutup.

Demikian tadi, sedikit cara sederhana mencetak backtrace pada gdb. Sekarang kita tidak perlu susah-susah menyalin secara manual. Semoga bisa memudahkan kita untuk mendapatkan hasil backtrace dan menganalisanya. Sekian, terima kasih dan sampai bertemu pada bahasan selanjutnya !

Artikel Terkait

Leave a Reply

Your email address will not be published. Required fields are marked *