GDB

Phần mềm chụp màn hình:
GDB
Các chi tiết về phần mềm:
Phiên bản: 8.1.1 Cập nhật
Ngày tải lên: 16 Aug 18
Nhà phát triển: Stan Shebs
Giấy phép: Miễn phí
Phổ biến: 286

Rating: 4.0/5 (Total Votes: 3)

GDB (còn được gọi là trình gỡ lỗi dự án GNU) là một phần mềm mã nguồn mở và miễn phí cho phép người dùng và nhà phát triển thấy được những gì đang xảy ra bên trong một chương trình khác, trong khi đó được thực hiện hoặc tại sao ứng dụng bị lỗi tại một điểm nhất định.


Tính năng trong nháy mắt

Các tính năng chính bao gồm bốn kỹ thuật khác nhau để giúp nhà phát triển nắm bắt lỗi trong hành động, khởi động ứng dụng và chỉ định bất kỳ điều gì có thể ảnh hưởng đến hành vi của ứng dụng, làm chương trình dừng lại trên các điều kiện cụ thể, kiểm tra nhật ký khi ứng dụng gặp sự cố, dần dần thay đổi mọi thứ một chương trình để thử nghiệm với việc sửa chữa các hiệu ứng của một vấn đề và tiếp tục bằng cách tìm hiểu về một lỗi khác. Nó cũng hỗ trợ gỡ lỗi các chương trình được viết bằng nhiều ngôn ngữ lập trình, bao gồm C, C ++, Pascal , Ada, Objective-C và nhiều mục khác.

Đó là một ứng dụng dòng lệnh

Trình gỡ lỗi dự án GNU là một ứng dụng dòng lệnh luôn luôn. Để sử dụng nó, bạn phải chạy & ldquo; gdb & rdquo; lệnh trong trình giả lập thiết bị đầu cuối, sau đó thực hiện lệnh & ldquo; help & rdquo; lệnh (không có dấu ngoặc kép) một dấu nhắc gdb. Ngoài ra, bạn cũng có thể nhập & ldquo; trợ giúp tất cả & rdquo; để xem danh sách tất cả các lệnh, gõ "help" theo sau là tên lệnh để xem tài liệu hoàn chỉnh, gõ "help" theo sau là tên lớp để xem danh sách các lệnh trong lớp đó, để gõ "apropos word" để tìm kiếm cho các lệnh liên quan đến "từ".


Danh sách các lớp lệnh

Sau khi nhập & ldquo; trợ giúp & rdquo; như được mô tả ở trên, bạn sẽ thấy danh sách các lớp lệnh, bao gồm bí danh (hiển thị bí danh của các lệnh khác), breakpoints (làm cho chương trình dừng ở một số điểm), dữ liệu (để kiểm tra dữ liệu), tệp (để kiểm tra tệp) , internals (lệnh bảo trì), tối nghĩa (tính năng tối nghĩa), chạy (để chạy chương trình), ngăn xếp (để kiểm tra ngăn xếp), trạng thái (đối với yêu cầu trạng thái), hỗ trợ (đối với cơ sở hỗ trợ), tracepoints (để truy tìm dừng chương trình) và do người dùng xác định (lệnh do người dùng xác định).

Hệ điều hành và nền tảng phần cứng được hỗ trợ

GDB đã được thiết kế từ phần bù đắp để trở thành một ứng dụng đa nền tảng, chạy trên các hệ điều hành chính thống như Microsoft Windows và một số phiên bản Linux / UNIX phổ biến nhất. Nó được hỗ trợ trên cả nền tảng phần cứng 32 bit và 64 bit.

Có gì mới trong bản phát hành này:

  • PR gdb / 22824 (mô tả sai lệch về hàm Python mới trong tệp GDB 8.1 TIN TỨC)
  • PR gdb / 22849 (ctrl-c không hoạt động trong điều khiển từ xa mở rộng)
  • PR gdb / 22907 ([Regression] gdbserver không hoạt động với các tệp nhị phân chỉ tên tệp)
  • PR gdb / 23028 (không đồng nhất với vcvtpd2dq)
  • PR gdb / 23053 (Khắc phục sự cố gdb-add-index gzip -D_GLIBCXX_DEBUG)
  • PR gdb / 23127 ([AArch64] GDB không thể được sử dụng để gỡ lỗi phần mềm sử dụng Địa chỉ Ảo cao)
  • Máy chủ PR / 23158 (gdbserver không còn hoạt động trên Windows)
  • Điểm ngắt PR / 23210 ([8.1 / 8.2 Hồi quy] Địa chỉ điểm ngắt không chính xác được điều chỉnh từ 0xf7fe7dd3 đến 0xfffffffff7fe7dd3)

Tính năng mới trong phiên bản 8.1:

  • Các điểm ngắt trên các hàm C ++ hiện được đặt trên tất cả các phạm vi theo mặc định (& quot; wild & quot; matching);
  • Hỗ trợ chèn các điểm ngắt trên các chức năng được đánh dấu bằng các thẻ C ++ ABI;
  • Mục tiêu mô phỏng số học dấu phẩy động trong quá trình đánh giá biểu thức (yêu cầu MPFR 3.1 trở lên);
  • Các cải tiến về Script Script khác nhau;
  • Hỗ trợ Rust được cải thiện; đặc biệt, các đối tượng Trait bây giờ có thể được kiểm tra khi gỡ lỗi mã Rust;
  • GDB không còn đưa ra các giả định về loại biểu tượng mà không cần gỡ lỗi thông tin để tránh tạo ra kết quả sai lầm và thường gây nhầm lẫn;
  • Các lệnh 'bật' và 'tắt' hiện chấp nhận một loạt các vị trí điểm ngắt;
  • Lệnh 'starti' mới để bắt đầu chương trình tại lệnh đầu tiên;
  • Lệnh 'rbreak' mới để chèn một số điểm ngắt thông qua mẫu biểu thức chính quy (yêu cầu Python);
  • Lệnh 'ptype' hiện hỗ trợ in offset và kích cỡ của các trường trong cấu trúc;
  • Lệnh 'gcore' hiện hỗ trợ việc đổ tất cả ánh xạ bộ nhớ (tùy chọn dòng lệnh '-a');
  • Phím tắt mới cho chế độ Đơn-khóa TUI: 'i' cho bướci và 'o' cho nexti;
  • Các cải tiến của GDBserver:
  • Hỗ trợ truyền các biến môi trường tới GDBserver;
  • Hỗ trợ bắt đầu các quy trình kém hơn với thư mục làm việc ban đầu được chỉ định;
  • Trên các hệ thống Unix, hỗ trợ cho việc mở rộng globbing và thay thế biến của các đối số dòng lệnh thấp hơn;
  • Các cải tiến hoàn thành khác nhau;
  • Lệnh được sử dụng để biên dịch và chèn mã bằng lệnh 'biên dịch' giờ đây có thể cấu hình được;
  • Tùy chọn dòng lệnh '--readnever' mới để tăng tốc độ khởi động GDB khi không cần thông tin gỡ lỗi;
  • Hỗ trợ cho các cấu hình gốc mới sau:
  • FreeBSD / aarch64 (aarch64 * - * - freebsd *);
  • FreeBSD / cánh tay (cánh tay * - * - freebsd *);
  • Hỗ trợ cho các mục tiêu mới sau:
  • FreeBSD / aarch64 (aarch64 * - * - freebsd *);
  • FreeBSD / cánh tay (cánh tay * - * - freebsd *);
  • OpenRISC ELF (hoặc1k * - * - elf)
  • Đã xóa hỗ trợ cho các mục tiêu và cấu hình gốc sau đây:
  • Solaris2 / x86 (i? 86 - * - solaris2. [0-9]);
  • Solaris2 / sparc (sparc * - * - solaris2. [0-9]);

Tính năng mới trong phiên bản:

  • Tạo phiên bản GDB này hiện yêu cầu các công cụ sau:
  • Trình biên dịch C ++ - 11 (ví dụ: GCC 4.8 trở lên);
  • GNU tạo phiên bản 3.81 trở lên.
  • Các thay đổi trong bản phát hành này bao gồm:
  • C ++: Hỗ trợ tham chiếu rvalue
  • Cải tiến tập lệnh Python:
  • Các chức năng mới để bắt đầu, dừng và truy cập bản ghi đang chạy btrace.
  • Hỗ trợ tham chiếu Rvalue trong gdb.Type.
  • Trình thông dịch lệnh GDB:
  • Các lệnh của người dùng hiện chấp nhận số lượng đối số không giới hạn.
  • & quot; đánh giá & quot; lệnh bây giờ mở rộng các đối số do người dùng xác định.
  • Hỗ trợ DWARF phiên bản 5
  • (lưu ý rằng chỉ mục .debug_names của nó chưa được hỗ trợ).
  • Cải tiến GDB / MI:
  • Lệnh -file-list-shared-libraries mới để liệt kê các thư viện được chia sẻ trong chương trình.
  • Lệnh -target-flash-delete mới để xóa bộ nhớ flash.
  • Hỗ trợ cho FreeBSD / mips (mips * - * - freebsd)
  • Hỗ trợ cho các mục tiêu sau:
  • Tóm tắt ARC (arc * - * - elf32)
  • FreeBSD / mips (mips * - * - freebsd)
  • Các cải tiến khác:
  • Chuyển hướng dòng lệnh hiện được hỗ trợ trên máy chủ MS-Windows.
  • Hỗ trợ tên luồng trên MS-Windows.
  • Hỗ trợ đăng ký PKU trên GNU / Linux.
  • Hỗ trợ cho mô tả Mục tiêu trên sparc32 và sparc64.
  • Lệnh GDB / CLI mới để xóa bộ nhớ flash
  • rdranded và rdseed hướng dẫn ghi / hỗ trợ phát lại.
  • Hỗ trợ cho các tính năng sau đã bị xóa:
  • Hỗ trợ các chương trình Java được biên dịch bằng gcj
  • Hỗ trợ cho các cấu hình sau:
  • FreeBSD / alpha (alpha * - * - freebsd *)
  • GNU / kFreeBSD / alpha (alpha * - * - kfreebsd * -gnu)

Tính năng mới trong phiên bản 7.9.1:

  • PR build / 18033 (nhận xét kiểu C ++ được sử dụng trong gdb / iq2000-tdep.c và gdb / biên dịch / biên dịch - *. c)

  • Lệnh
  • PR build / 18298 (& quot; biên dịch & quot; không thể tìm thấy trình biên dịch nếu các công cụ được định cấu hình với bộ ba thay vì tứ trình)
  • PR tui / 18311 (SEGV ngẫu nhiên khi hiển thị thanh ghi trong chế độ TUI)
  • PR python / 18299 (ngoại lệ khi đăng ký máy in khá toàn cầu ở chế độ tiết)
  • PR python / 18066 (đối số & quot; từ & quot; có vẻ bị hỏng trong Command.complete (văn bản, từ))
  • PR pascal / 17815 (Khắc phục hành vi pascal cho các trường lớp bằng testcase)
  • PR python / 18285 (ptype expr-with-xmethod gây SEGV)

Tính năng mới trong phiên bản 7.9:

  • Cải tiến tập lệnh Python.
  • Biên dịch mã nguồn và tiêm vào phần dưới.
  • Các lệnh, tùy chọn, biến số / tùy chọn tiện lợi mới.
  • Hỗ trợ MIPS SDE (mips * -sde * -elf *).
  • Xử lý tín hiệu tốt hơn khi gỡ lỗi chương trình được tạo luồng.

Có gì mới trong phiên bản 7.8.2:

  • PR symtab / 17642 ([hồi quy 7,8] nội bộ -error: resolve_dynamic_struct: Xác nhận `TYPE_NFIELDS (loại) & gt; 0 'không thành công.)
  • PR binutils / 17677 (_bfd_elf_get_synthetic_symtab chạy trong O (n ^ 2) phức tạp)
  • PR gdb / 16215 (SPARC: không thể tính toán CFA cho khung này)
  • PR gdb / 17525 (đích-async: lệnh breakpoint không được thực thi khi chương trình chạy từ tập lệnh -x)
  • PR cli / 17828 ([hồi quy 7,8] -bộ ngắt dòng -ex r)

Tính năng mới trong phiên bản 7.8.1:

  • PR python / 17364 (Cần tên máy in tốt hơn trong bound_registers.py)
  • PR build / 17104 (CFLAGS = & quot; -Wall -Wextra & quot; gdb / confgure - with-babeltrace không thành công)
  • PR gdb / 17345 (babeltrace (1.1.2 trở lên) than phiền về dữ liệu ctf do GDB tạo)
  • PR build / 17298 (gcore: Không thể nhận thanh ghi: Không có quá trình như vậy)
  • PR python / 17342 (Python Xmethod không tương thích với Python 3)
  • PR python / 17355 (Crash trên bộ lọc khung Python với arg không đọc được)
  • PR guile / 17367 (tính toán đường dẫn guild sai khi tập lệnh pkg-config được cung cấp dưới dạng arg to --with-guile)
  • PR gdb / 17247 (gdb bị treo trên ứng dụng đa luồng)
  • PR gdb / 17347 (Hồi quy: GDB ngừng chạy khi có quy trình đính kèm)
  • PR gdb / 17407 (Hồi quy để đọc vDSO trên Linux)
  • Máy chủ PR / 17457 (aarch64 / gdbserver: hiển thị sổ đăng ký điểm động sai)
  • Máy chủ PR / 17487 (trạng thái- & gt; dr_control_mirror == 0 xác nhận không thành công trong gdbserver trên Windows)
  • PR gdb / 17472 (với chú thích, đầu vào trong khi thực hiện trong các trường hợp foreground crashes readline / gdb)
  • PR gdb / 17471 (lặp lại lệnh nền làm cho nền trước)
  • PR cli / 17300 (lỗi trong chế độ không ngừng với tiếp tục -a & (readline_callback_read_char () được gọi không có trình xử lý!))
  • PR python / 17372 (python treo khi hiển thị trợ giúp ())
  • PR python / 17408 (../../gdb/infrun.c:5256: lỗi nội bộ: switch_back_to_stepped_thread: Xác nhận `! schedlock_applies (1) 'không thành công.)

Tính năng mới trong phiên bản 7.8:

  • Hỗ trợ viết mã lệnh.
  • Cải tiến tập lệnh Python.
  • Các lệnh, tùy chọn, biến số / tùy chọn tiện lợi mới.
  • Cải tiến Giao thức Từ xa và GDBserver.
  • Cấu hình đích mới (PowerPC64 GNU / Linux nhỏ).
  • cải tiến btrace.
  • Hỗ trợ mảng tự động biến độ dài ISO C99.
  • Phần & quot; so sánh các phần & quot; lệnh hiện hoạt động trên tất cả các mục tiêu.
  • Liên kết & quot; nhắm mục tiêu gốc & quot; lệnh bây giờ kết nối với mục tiêu gốc.

Tính năng mới trong phiên bản 7.7:

  • Hỗ trợ tập lệnh Python nâng cao.
  • Một số cải tiến C ++.
  • Các lệnh, tùy chọn, biến số / tùy chọn tiện lợi mới.
  • Một số lệnh và cải tiến mới của GDB / MI.
  • Cải tiến Giao thức Từ xa và GDBserver.
  • Cấu hình đích mới (Nios II, TI MSP430).
  • GDB Windows x64 mở hỗ trợ dữ liệu.
  • SystemTap đầu dò SDT hỗ trợ trên GNU / Linux AArch64.
  • Hỗ trợ CTF (Định dạng Dấu vết Thông thường).
  • Tập lệnh mới gcore và gdb-add-index.sh.
  • Đã hỗ trợ bản ghi * hỗ trợ ghi lại / ghi lại luồng cánh tay được cải thiện.
  • Đã xóa hỗ trợ cho các cấu hình lỗi thời của NetBSD và OpenBSD. Các biến thể ELF của các cấu hình này được hỗ trợ.
  • Tập & quot; đặt | hiển thị lại dấu nhắc & quot; các lệnh không được dùng để ủng hộ & quot; hiển thị | hiển thị chuỗi nối tiếp & quot;.

Có gì mới trong phiên bản 7.6.2:

  • Điểm ngắt PR / 16251 (lỗi ngắt phần cứng AArch64 sau ngã ba)
  • PR gdb / 16303 (GDB 7.6.1 không hoạt động với binutils 2.24 trên MIPS16 và microMIPS)

Tính năng mới trong phiên bản 7.6.1:

  • PR tdep / 15420 (Không thể gỡ lỗi chương trình luồng trên các phiên bản x86-solaris mới hơn - Solaris 10, Update 10 hoặc mới hơn)
  • Từ xa PR / 15455 (gói tin QTro bị hỏng)
  • Xây dựng PR / 15476 (Lỗi xây dựng do loại enum không đầy đủ trong utils.h)
  • Máy chủ PR / 15594 (hỗ trợ tls trong 64x32 x86 gdbserver không mở rộng địa chỉ đến 64 bit)
  • Máy chủ PR / 15075 (dprintf inteferes với & quot; next & quot;)
  • Máy chủ PR / 15434 (dprintf sử dụng đồng bộ 'tiếp tục' ngay cả ở chế độ không ngừng)
  • PR tui / 14880 (trong bố cục đăng ký tách, kết quả trong xác nhận thất bại trong giá trị.c)
  • PR c ++ / 15519 (GDB 7,6 chậm hơn 94 lần so với GDB 7.5.1 bằng cách sử dụng tệp lõi nhất định)
  • PR gdb / 15837 (GDB in các giá trị mục nhập cho các biến cục bộ)
  • PR gdb / 15415 (gdb giải quyết các liên kết tượng trưng khi truyền tham số argv [0])
  • PR cli / 15603 (CTRL-C không còn có thể bị gián đoạn)
  • PR gdb / 15604 (hồi quy gdbserver socket leak 7.5)

Tính năng mới trong phiên bản 7.5:

  • Hỗ trợ ngôn ngữ đi.
  • Mục tiêu mới (x32 ABI, microMIPS, Renesas RL78, HP OpenVMS ia64).
  • Các cải tiến về tập lệnh Python khác.
  • Đầu dò SDT (Truy tìm Định nghĩa tĩnh) hỗ trợ với đầu dò SystemTap.
  • Cải tiến GDBserver (kết nối stdio, đánh giá bên cạnh các điều kiện điểm ngắt, cải tiến giao thức từ xa).
  • Các cải tiến khác linh tinh (khả năng dừng khi thư viện được chia sẻ được tải / không tải, printf động, v.v.)
  • Gỡ lỗi ngược trên ARM.
  • Mã nhị phân & quot; gdbtui & quot; đã bị bỏ rơi và không còn có thể được xây dựng nữa. Sử dụng & quot; gdb -tui & quot; thay vào đó.

Tính năng mới trong phiên bản 7.4:

  • Các dòng đường mơ hồ hiện được xử lý nhất quán hơn.
  • Hiện tại, bạn có thể bỏ qua các chức năng và tệp không ưa thích khi bước với hàm & quot; bỏ qua & quot; và & quot; bỏ qua tệp & quot; lệnh.
  • Các lệnh để đặt và nhận giới hạn độ dài tối đa của điểm quan sát phần cứng mục tiêu từ xa đã được thêm.
  • Tập lệnh Python đã được cải thiện rất nhiều.
  • Nhiều cải tiến khác, sửa lỗi và thay đổi chung đã được thực hiện.

Tính năng mới trong phiên bản 7.1:

  • Hỗ trợ cho các mục tiêu mới (bao gồm cả trình mô phỏng):
  • Xilinx MicroBlaze
  • Renesas RX
  • Các tính năng chính mới là:
  • Gỡ lỗi nhiều chương trình, cho phép trình gỡ lỗi kiểm soát nhiều hơn
  • một chương trình trong cùng một phiên GDB.
  • Gỡ lỗi Vị trí Thực thi Độc lập (PIE).
  • Nó cũng có nhiều cải tiến và sửa lỗi, bao gồm:
  • Hỗ trợ Python đã được mở rộng.
  • Cải tiến hỗ trợ C ++ (không gian tên, toán tử truyền, sửa lỗi)
  • Cải tiến hỗ trợ Tracepoint.
  • Cải tiến quy trình ghi (lưu / khôi phục nhật ký thực thi, phần cứng
  • hỗ trợ điểm quan sát).
  • Các cải tiến giao thức từ xa (gỡ lỗi hạt nhân Linux, các gói mới
  • cho hỗ trợ tracepoint)

Phần mềm tương tự

debug
debug

11 May 15

PuDB
PuDB

20 Feb 15

jarvis
jarvis

20 Feb 15

Phần mềm khác của nhà phát triển Stan Shebs

Xconq
Xconq

2 Jun 15

Ý kiến ​​để GDB

Bình luận không
Nhập bình luận
Bật hình ảnh!