GDB

Software screenshot:
GDB
Rincian Software:
Versi: 8.1.1 Diperbarui
Tanggal Upload: 16 Aug 18
Pengembang: Stan Shebs
Lisensi: Gratis
Popularitas: 286

Rating: 4.0/5 (Total Votes: 3)

GDB (juga dikenal sebagai GNU Project debugger) adalah perangkat lunak open-source dan perangkat lunak baris gratis yang memungkinkan pengguna dan pengembang sama-sama melihat apa yang sedang terjadi `di dalam 'program lain, sementara itu dijalankan, atau mengapa aplikasi mogok pada titik tertentu.


Fitur sekilas

Fitur utama mencakup empat teknik berbeda untuk membantu pengembang menangkap bug dalam tindakan, memulai aplikasi dan menentukan apa pun yang mungkin memengaruhi perilakunya, membuat program berhenti pada kondisi yang ditentukan, memeriksa log saat aplikasi mogok, secara bertahap mengubah berbagai hal di sebuah program untuk bereksperimen dengan mengoreksi efek dari satu masalah, dan melanjutkan dengan belajar tentang bug lain. Ini juga mendukung debugging program yang ditulis dalam berbagai bahasa pemrograman, termasuk C, C ++, Pascal , Ada, Objective-C, dan banyak lainnya.

Ini adalah aplikasi baris perintah

GNU Project debugger adalah selalu akan menjadi aplikasi baris perintah. Untuk menggunakannya, Anda harus menjalankan & ldquo; gdb & rdquo; perintah dalam emulator terminal, kemudian jalankan & ldquo; help & rdquo; perintah (tanpa tanda kutip) a prompt gdb. Selain itu, Anda juga dapat mengetik & ldquo; help all & rdquo; perintah untuk melihat daftar semua perintah, ketik "help" diikuti dengan nama perintah untuk melihat dokumentasi lengkap, ketik "help" diikuti dengan nama kelas untuk melihat daftar perintah di kelas itu, untuk mengetik "kata apropos" untuk mencari untuk perintah yang terkait dengan "kata."


Daftar kelas perintah

Setelah mengetik & ldquo; help & rdquo; perintah seperti yang dijelaskan di atas, Anda akan melihat daftar kelas perintah, termasuk alias (menampilkan alias perintah lain), breakpoint (membuat program berhenti pada titik-titik tertentu), data (untuk memeriksa data), file (untuk memeriksa file) , internal (perintah pemeliharaan), tidak jelas (fitur tidak jelas), menjalankan (untuk menjalankan program), menumpuk (untuk memeriksa tumpukan), status (untuk pertanyaan status), dukungan (untuk fasilitas pendukung), pelacakan (untuk melacak pelaksanaan program tanpa menghentikan program) dan perintah yang ditentukan pengguna (perintah yang ditentukan pengguna).

Platform perangkat keras dan OS yang didukung

GDB telah dirancang dari offset untuk menjadi aplikasi lintas platform, berjalan di sistem operasi utama seperti Microsoft Windows dan beberapa varian Linux / UNIX yang paling populer. Ini didukung pada platform perangkat keras 32-bit dan 64-bit.

Apa yang baru dalam rilis ini:

  • PR gdb / 22824 (deskripsi menyesatkan tentang fungsi rbreak Python baru di file GDB 8.1 NEWS)
  • PR gdb / 22849 (ctrl-c tidak berfungsi pada remote-jauh)
  • PR gdb / 22907 ([Regression] gdbserver tidak berfungsi dengan binari-file-nama saja)
  • PR gdb / 23028 (pembongkaran vcvtpd2dq yang tidak konsisten)
  • PR gdb / 23053 (Perbaiki -D_GLIBCXX_DEBUG gdb-add-index regression)
  • PR gdb / 23127 ([AArch64] GDB tidak dapat digunakan untuk perangkat lunak debug yang menggunakan Alamat Virtual tinggi)
  • PR server / 23158 (gdbserver tidak lagi berfungsi pada Windows)
  • PR breakpoints / 23210 ([8.1 / 8.2 Regression] Alamat Bogus Breakpoint disesuaikan dari 0xf7fe7dd3 ke 0xfffffffff7fe7dd3)

Apa yang baru di versi 8.1:

  • Titik pemisah pada fungsi C ++ sekarang disetel di semua cakupan secara default (& quot; liar & quot; cocok);
  • Dukungan untuk memasukkan breakpoint pada fungsi yang ditandai dengan tag C ++ ABI;
  • Target emulasi aritmatik floating-point selama evaluasi ekspresi (membutuhkan MPFR 3.1 atau yang lebih baru);
  • Beragam penyempurnaan Python Scripting;
  • Peningkatan dukungan Karat; khususnya, objek Trait sekarang dapat diperiksa ketika melakukan debug pada kode Karat;
  • GDB tidak lagi membuat asumsi tentang jenis simbol tanpa informasi debug untuk menghindari hasil yang keliru dan sering membingungkan;
  • Perintah 'enable' dan 'disable' sekarang menerima berbagai lokasi breakpoint;
  • Perintah 'starti' baru untuk memulai program pada instruksi pertama;
  • Perintah 'rbreak' baru untuk menyisipkan sejumlah breakpoint melalui pola ekspresi reguler (membutuhkan Python);
  • Perintah 'ptype' sekarang mendukung pencetakan offset dan ukuran bidang dalam sebuah struct;
  • Perintah 'gcore' sekarang mendukung membuang semua pemetaan memori ('-a' opsi baris perintah);
  • Pintasan baru untuk mode TUI Single-Key: 'i' untuk stepi, dan 'o' untuk nexti;
  • peningkatan GDBserver:
  • Dukungan untuk mentransmisikan variabel lingkungan ke GDBserver;
  • Dukungan untuk memulai proses yang lebih rendah dengan direktori kerja awal yang ditentukan;
  • Pada sistem Unix, dukungan untuk ekspansi globbing dan substitusi variabel dari argumen baris perintah yang inferior;
  • Berbagai penyempurnaan penyelesaian;
  • Perintah yang digunakan untuk mengkompilasi dan menyuntikkan kode dengan perintah 'compile' sekarang dapat dikonfigurasi;
  • Opsi baris perintah baru '--readnever' untuk mempercepat startup GDB ketika tidak diperlukan informasi debugging;
  • Dukungan untuk konfigurasi asli baru berikut:
  • FreeBSD / aarch64 (aarch64 * - * - freebsd *);
  • FreeBSD / arm (lengan * - * - freebsd *);
  • Dukungan untuk target baru berikut:
  • FreeBSD / aarch64 (aarch64 * - * - freebsd *);
  • FreeBSD / arm (lengan * - * - freebsd *);
  • OpenRISC ELF (or1k * - * - elf)
  • Dukungan yang dihapus untuk target dan konfigurasi asli berikut:
  • Solaris2 / x86 (i? 86 - * - solaris2. [0-9]);
  • Solaris2 / sparc (sparc * - * - solaris2. [0-9]);

Apa yang baru dalam versi:

  • Membangun GDB versi ini sekarang membutuhkan alat berikut:
  • Kompiler C ++ - 11 (misalnya, GCC 4.8 atau yang lebih baru);
  • GNU membuat versi 3.81 atau lebih baru.
  • Perubahan dalam rilis ini termasuk:
  • C ++: Dukungan untuk rujukan nilai
  • perangkat tambahan skrip Python:
  • Fungsi baru untuk memulai, menghentikan, dan mengakses rekaman btrace yang berjalan.
  • Dukungan rujukan nilai di gdb.Type.
  • perintah GDB:
  • Perintah pengguna sekarang menerima argumen dalam jumlah tak terbatas.
  • & quot; eval & quot; perintah sekarang memperluas argumen yang ditentukan pengguna.
  • Dukungan versi 5 DWARF
  • (perhatikan bahwa .debug_names index-nya belum didukung).
  • peningkatan GDB / MI:
  • Perintah new -file-list-shared-libraries untuk mendaftarkan pustaka bersama dalam program.
  • Perintah new -target-flash-erase, untuk menghapus memori flash.
  • Dukungan untuk FreeBSD / mips asli (mips * - * - freebsd)
  • Mendukung untuk target berikut:
  • Synopsys ARC (arc * - * - elf32)
  • FreeBSD / mips (mips * - * - freebsd)
  • Perangkat tambahan lainnya:
  • Pengalihan baris perintah kini didukung pada host MS-Windows.
  • Dukungan untuk nama-nama utas pada MS-Windows.
  • Dukungan untuk daftar PKU di GNU / Linux.
  • Dukungan untuk deskripsi Target pada sparc32 dan sparc64.
  • Perintah GDB / CLI baru untuk menghapus memori flash
  • rdrand dan rdseed instructions merekam / memutar ulang dukungan.
  • Dukungan untuk fitur-fitur berikut telah dihapus:
  • Dukungan untuk program Java yang dikompilasi dengan gcj
  • Dukungan untuk konfigurasi berikut:
  • FreeBSD / alpha (alpha * - * - freebsd *)
  • GNU / kFreeBSD / alpha (alpha * - * - kfreebsd * -gnu)

Apa yang baru di versi 7.9.1:

  • PR build / 18033 (Komentar gaya C ++ digunakan dalam gdb / iq2000-tdep.c dan gdb / kompilasi / kompilasi - *. c)
  • PR build / 18298 (& quot; compile & quot; perintah tidak dapat menemukan kompilator jika alat dikonfigurasi dengan triplet, bukan quadruplet)
  • PR tui / 18311 (SEGV Acak ketika menampilkan register dalam mode TUI)
  • PR python / 18299 (pengecualian saat mendaftarkan printer-cantik global dalam mode verbose)
  • PR python / 18066 (argumen & quot; word & quot; tampaknya rusak di Command.complete (teks, kata))
  • PR pascal / 17815 (Memperbaiki perilaku pascal untuk bidang kelas dengan testcase)
  • PR python / 18285 (ptype expr-with-xmethod menyebabkan SEGV)

Apa yang baru di versi 7.9:

  • perangkat tambahan skrip Python.
  • Kompilasi kode sumber dan injeksi ke inferior.
  • Perintah baru, opsi, variabel / opsi kenyamanan.
  • Dukungan MIPS SDE (mips * -sde * -elf *).
  • Penanganan yang lebih baik dari sinyal ketika melakukan debug pada program berulir.

Apa yang baru di versi 7.8.2:

  • PR symtab / 17642 ([7.8 regresi] internal -error: resolve_dynamic_struct: Sikap tegas `TYPE_NFIELDS (type) & gt; 0 'gagal.)
  • PR binutils / 17677 (_bfd_elf_get_synthetic_symtab berjalan dalam kompleksitas O (n ^ 2))
  • PR gdb / 16215 (SPARC: tidak dapat menghitung CFA untuk frame ini)
  • PR gdb / 17525 (target-async: perintah breakpoint tidak dijalankan saat program dijalankan dari -x skrip)
  • PR cli / 17828 (terminal pemberhentian [7.8 regresi] -beta -ex r)

Apa yang baru di versi 7.8.1:

  • PR python / 17364 (Perlu nama printer yang lebih baik di bound_registers.py)
  • PR build / 17104 (CFLAGS = & quot; -Wall -Wextra & quot; gdb / confgure --with-babeltrace gagal)
  • PR gdb / 17345 (babeltrace (1.1.2 dan yang lebih baru) mengeluh tentang data ctf yang dihasilkan oleh GDB)
  • PR build / 17298 (gcore: Tidak dapat mendaftar: Tidak ada proses semacam itu)
  • PR python / 17342 (Xmethod Python tidak kompatibel dengan Python 3)
  • PR python / 17355 (Kerusakan pada filter bingkai Python dengan arg yang tidak dapat dibaca)
  • PR guile / 17367 (perhitungan jalur guild salah ketika skrip pkg-config disediakan sebagai arg ke --with-guile)
  • PR gdb / 17247 (gdb membeku pada aplikasi multi-berulir)
  • PR gdb / 17347 (Regresi: GDB berhenti saat dijalankan dengan proses terlampir)
  • PR gdb / 17407 (Regresi untuk membaca vDSO Linux)
  • PR server / 17457 (aarch64 / gdbserver: tampilan register titik mengambang salah)
  • PR server / 17487 (state- & gt; dr_control_mirror == 0 pernyataan gagal di gdbserver pada Windows)
  • PR gdb / 17472 (dengan anotasi, masukan saat mengeksekusi di latar depan crash readline / gdb)
  • PR gdb / 17471 (mengulangi perintah latar belakang untuk membuat latar depan)
  • PR cli / 17300 (crash dalam mode non-stop dengan continue -a & (readline_callback_read_char () dipanggil tanpa handler!))
  • PR python / 17372 (python hang saat menampilkan bantuan ())
  • PR python / 17408 (../../gdb/infrun.c:5256: kesalahan internal: switch_back_to_stepped_thread: Asersi `! schedlock_applies (1) 'gagal.)

Apa yang baru di versi 7.8:

  • dukungan scripting Guile.
  • perangkat tambahan skrip Python.
  • Perintah baru, opsi, variabel / opsi kenyamanan.
  • Protokol Remote dan peningkatan GDBserver.
  • Konfigurasi target baru (PowerPC64 GNU / Linux little-endian).
  • perangkat tambahan baling-baling.
  • ISO C99 panjang variabel dukungan array otomatis.
  • & quot; bandingkan-bagian & quot; perintah sekarang berfungsi pada semua target.
  • & quot; targetkan & quot; perintah sekarang terhubung ke target asli.

Apa yang baru di versi 7.7:

  • Dukungan skrip Python yang ditingkatkan.
  • Beberapa peningkatan C ++.
  • Perintah baru, opsi, variabel / opsi kenyamanan.
  • Beberapa perintah dan penyempurnaan baru GDB / MI.
  • Protokol Remote dan peningkatan GDBserver.
  • Konfigurasi target baru (Nios II, TI MSP430).
  • GDB Windows x64 dukungan data unwinding.
  • Dukungan SystemTap SDT pada AArch64 GNU / Linux.
  • Dukungan CTF (Common Trace Format).
  • Skrip baru gcore dan gdb-add-index.sh.
  • Peningkatan * -linux catatan / dukungan replay lengan.
  • Menghilangkan dukungan untuk a.out konfigurasi usang NetBSD dan OpenBSD. Varian ELF dari konfigurasi ini tetap didukung.
  • & quot; set | show remotebaud & quot; perintah tidak lagi digunakan untuk & quot; show | show serial baud & quot;.

Apa yang baru di versi 7.6.2:

  • PR breakpoint / 16251 (galat breakpoint perangkat keras AArch64 setelah garpu)
  • PR gdb / 16303 (GDB 7.6.1 tidak bekerja dengan binutils 2.24 pada MIPS16 dan microMIPS)

Apa yang baru di versi 7.6.1:

  • PR tdep / 15420 (Tidak dapat men-debug program berulir pada versi x86-solaris yang lebih baru - Solaris 10, Pembaruan 10 atau yang lebih baru)
  • PR remote / 15455 (Paket remote QTro rusak)
  • PR build / 15476 (Bangun kegagalan karena tipe enum yang tidak lengkap di utils.h)
  • PR server / 15594 (tls support di 64x32 x86 gdbserver tidak memperpanjang alamat ke 64 bit)
  • PR server / 15075 (dprintf inteferes dengan & quot; next & quot;)
  • PR server / 15434 (dprintf menggunakan sinkron 'continue' bahkan dalam mode non-stop)
  • PR tui / 14880 (dalam tata letak daftar terpisah, hasil dalam kegagalan pernyataan dalam value.c)
  • PR c ++ / 15519 (GDB 7.6 94x lebih lambat dari GDB 7.5.1 menggunakan file inti tertentu)
  • PR gdb / 15837 (GDB mencetak nilai entri untuk variabel lokal)
  • PR gdb / 15415 (gdb menyelesaikan tautan simbolis ketika melewati argv [0])
  • PR cli / 15603 (CTRL-C tidak bisa lagi mengganggu rendah)
  • PR gdb / 15604 (gdbserver socket leak 7.5 regression)

Apa yang baru di versi 7.5:

  • Dukungan bahasa.
  • Target baru (x32 ABI, microMIPS, Renesas RL78, HP OpenVMS ia64).
  • Penyempurnaan skrip Python lainnya.
  • SDT (Static Defined Tracing) memeriksa dukungan dengan probe SystemTap.
  • Peningkatan GDBserver (koneksi stdio, evaluasi sisi-target dari kondisi breakpoint, perbaikan protokol jarak jauh).
  • Penyempurnaan bermacam-macam lainnya (kemampuan untuk berhenti ketika pustaka bersama dimuat / dibongkar, cetakan dinamis, dll).
  • Reverse debugging pada ARM.
  • Biner & quot; gdbtui & quot; telah ditinggalkan dan tidak bisa lagi dibangun. Gunakan & quot; gdb -tui & quot; sebagai gantinya.

Apa yang baru di versi 7.4:

  • Garis-garis ambigu sekarang ditangani secara lebih konsisten.
  • Fungsi dan file yang tidak menarik kini dapat dilewati ketika melangkah dengan & quot; melewatkan fungsi & quot; dan & quot; lewati file & quot; perintah.
  • Perintah untuk pengaturan dan mendapatkan batas panjang maksimum dari titik pemeriksaan perangkat keras target jarak jauh ditambahkan.
  • Pembuatan skrip Python jauh lebih baik.
  • Banyak perbaikan lainnya, perbaikan bug, dan perubahan umum dilakukan.

Apa yang baru di versi 7.1:

  • Dukungan untuk target baru (termasuk simulator):
  • Xilinx MicroBlaze
  • Renesas RX
  • Fitur baru utama adalah:
  • Multi-program debugging, memungkinkan debugger untuk mengontrol lebih dari
  • satu program dalam sesi GDB yang sama.
  • Posisi debug yang Dapat Dijalankan Independen (PIE).
  • Ini juga menampilkan banyak penyempurnaan dan perbaikan bug, termasuk:
  • Dukungan Python telah diperpanjang.
  • Peningkatan dukungan C ++ (namespace, operator cor, perbaikan bug)
  • Peningkatan dukungan tracepoint.
  • Proses Rekam perbaikan (simpan / pulihkan log eksekusi, perangkat keras
  • dukungan watchpoint).
  • Peningkatan protokol jarak jauh (Linux kernel debugging, paket baru
  • untuk dukungan tracepoint)

Software yang serupa

strace
strace

23 Nov 17

python-ptrace
python-ptrace

11 May 15

Visual REGEXP
Visual REGEXP

3 Jun 15

Alleyoop
Alleyoop

15 Apr 15

Perangkat lunak lain dari pengembang Stan Shebs

Xconq
Xconq

2 Jun 15

Komentar untuk GDB

Komentar tidak ditemukan
Tambahkan komentar
Aktifkan gambar!