Bản phát hành trình gỡ lỗi GDB 8.3

giới thiệu phát hành trình gỡ lỗi GDB 8.3, hỗ trợ gỡ lỗi cấp nguồn cho nhiều ngôn ngữ lập trình (Ada, C, C++, Objective-C, Pascal, Go, v.v.) trên nhiều phần cứng khác nhau (i386, amd64, ARM, Power, Sparc, RISC-V và v.v.) và nền tảng phần mềm (GNU/Linux, *BSD, Unix, Windows, macOS).

Chìa khóa cải tiến:

  • Giao diện CLI và TUI hiện có khả năng xác định kiểu đầu cuối (lệnh “set style” đã được thêm vào). Với GNU Highlight, việc đánh dấu văn bản nguồn được triển khai;
  • Đã triển khai hỗ trợ thử nghiệm để biên dịch và thay thế mã nguồn C++ thành quy trình do GDB kiểm soát
    (ít). Để hoạt động, bạn cần ít nhất một phiên bản GCC 7.1b được biên dịch bằng libcp1.so;

  • Hỗ trợ IPv6 đã được thêm vào GDB và GDBserver. Để đặt địa chỉ IPv6, hãy sử dụng định dạng “[ADDRESS]:PORT”;
  • Đối với các hệ thống đích RISC-V, hỗ trợ mô tả mục tiêu ở định dạng XML đã được thêm vào (Định dạng mô tả mục tiêu);
  • Nền tảng FreeBSD cung cấp hỗ trợ cài đặt các điểm chặn
    (điểm bắt) đối với các cuộc gọi hệ thống sử dụng bí danh dành riêng cho các ABI khác nhau (ví dụ: đối với 'kevent', bí danh có sẵn là 'freebsd11_kevent' để liên kết với ABI cũ);

  • Hỗ trợ cho các ổ cắm Unix (Ổ cắm tên miền Unix) đã được thêm vào lệnh "đích từ xa";
  • Đã thêm khả năng hiển thị tất cả các tệp được mở bởi một quy trình (lệnh “info proc files”);
  • Đã triển khai khả năng tự động lưu các chỉ mục ký hiệu DWARF vào đĩa để tăng tốc độ tải cùng một tệp thực thi tiếp theo;
  • Đã thêm hỗ trợ để truy cập các thanh ghi PPR, DSCR, TAR, EBB/PMU và HTM vào GDBserver cho nền tảng PowerPC GNU/Linux;
  • Đã thêm các lệnh mới "đặt/hiển thị gỡ lỗi các loại biên dịch-cplus" và
    “đặt/hiển thị bỏ qua gỡ lỗi” để định cấu hình đầu ra dữ liệu về chuyển đổi loại C++ và thông tin về các tệp và chức năng bị bỏ qua;

  • Đã thêm các lệnh "frame apply COMMAND", "taas COMMAND", "faas COMMAND", "tfaas COMMAND" để áp dụng các lệnh để xếp chồng các khung và luồng;
  • Các cải tiến đã được thực hiện đối với các lệnh “frame”, “select-frame”, “info frame”,
    — “chức năng thông tin”, “loại thông tin”, “biến thông tin”, “luồng thông tin”, “proc thông tin”;

  • Khi chạy ở chế độ hàng loạt, GDB hiện trả về mã lỗi 1 nếu lệnh cuối cùng không thành công;
  • Đã thêm khả năng xây dựng GDB bằng Công cụ khử trùng hành vi không xác định do GCC cung cấp;
  • Đã thêm cài đặt hệ thống cơ sở (cấu hình gốc, để gỡ lỗi trên cùng một hệ thống) cho nền tảng RISC-V GNU/Linux (riscv*-*-linux*) và RISC-V FreeBSD (riscv*-*-freebsd*);
  • Đã thêm cấu hình mục tiêu: CSKY ELF (csky*-*-elf), CSKY GNU/Linux (csky*-*-linux), NXP S12Z ELF (s12z-*-elf), OpenRISC GNU/Linux (or1k *-*-linux *), RISC-V GNU/Linux (riscv*-*-linux*) và RISC-V FreeBSD (riscv*-*-freebsd*);
  • Việc gỡ lỗi trên cùng một hệ thống trên Windows hiện yêu cầu Windows XP hoặc các phiên bản mới hơn;
  • Hiện cần có Python 2.6 trở lên để sử dụng API Python.

Nguồn: opennet.ru

Thêm một lời nhận xét