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

giới thiệu phát hành trình gỡ lỗi GDB 9.1 (bản phát hành đầu tiên của dòng 9.x, nhánh 9.0 được sử dụng để phát triển). GDB 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:

  • Hỗ trợ cho nền tảng Solaris 10 và Cell Broadband Engine đã bị ngừng;
  • Đã thêm trình mô phỏng mới của hệ thống con PRU (Đơn vị thời gian thực có thể lập trình) được sử dụng trong bộ xử lý Texas Instruments (pru-*-elf);
  • Đã thêm chế độ thử nghiệm để tải nhanh các biểu tượng gỡ lỗi ở chế độ đa luồng (được bật thông qua cài đặt 'duy trì tập hợp luồng công việc không giới hạn');
  • Có thể sử dụng ký hiệu '.' trong tên lệnh;
  • Đã thêm khả năng đặt điểm dừng trên các hàm và chương trình con lồng nhau trong Fortran;
  • Công việc đã được thực hiện nhằm mang lại một phong cách thống nhất và cải thiện khả năng đọc lệnh;
  • Cơ sở hạ tầng tiêu chuẩn đã được triển khai để truyền các đối số lệnh bằng ký tự dấu gạch ngang ('-OPT'), cho phép tự động hoàn thành bằng phím tab;
  • Các lệnh “printf” và “eval” triển khai hỗ trợ xuất chuỗi theo kiểu C và Ada mà không cần gọi trực tiếp một hàm trong chương trình;
  • Đã thêm hỗ trợ để lọc các tệp đầu ra dựa trên biểu thức chính quy trong lệnh “nguồn thông tin”;
  • Trong cài đặt “set print frame-arguments”, tham số “hiện diện” được triển khai, khi đặt, chỉ hiển thị chỉ báo hiện diện “…” cho đối số thay vì hiển thị tên và giá trị;
  • Trong giao diện TUI các lệnh "focus", "winheight", "+", "-", ">", "<" hiện có phân biệt chữ hoa chữ thường;
  • Đối với các lệnh "in", "biên dịch in", "backtrace", "khung"
    các tùy chọn apply", "tfaas" và "faas" đã được triển khai để ghi đè cài đặt chung (ví dụ: những cài đặt được đặt qua "set print […]");

  • Tùy chọn "-q" đã được thêm vào lệnh "loại thông tin" để tắt đầu ra của một số tiêu đề;
  • Trong cài đặt, thay vì giá trị “không giới hạn”, giờ đây bạn có thể chỉ định “u”;
  • Các lệnh mới được thêm vào:
    • "define-prefix" để xác định các lệnh tiền tố của riêng bạn;
    • "|" hoặc "ống" để chạy lệnh và chuyển hướng đầu ra sang lệnh shell;
    • “with” để chạy lệnh được chỉ định với các cài đặt được thay đổi tạm thời;
    • “đặt các hàm gọi có thể” để kiểm soát xem chương trình con có thể được gọi từ GDB hay không;
    • "đặt kết thúc in [bật|tắt]" để điều khiển việc hiển thị giá trị trả về khi sử dụng lệnh "kết thúc";
    • “đặt độ sâu tối đa của bản in” để giới hạn đầu ra của các cấu trúc lồng nhau;
    • “đặt giá trị thô in [bật|tắt]” để bật/tắt định dạng giá trị đầu ra;
    • “đặt chuyển hướng gỡ lỗi ghi nhật ký [bật|tắt]” để kiểm soát việc lưu kết quả gỡ lỗi vào tệp nhật ký;
    • Một loạt lệnh “đặt kiểu” mới;
    • “đặt thông tin khung in […]” để xác định thông tin sẽ được in khi hiển thị trạng thái khung ngăn xếp;
    • “đặt nguồn thu gọn của tôi” để bật chế độ thu gọn để hiển thị mã trong giao diện TUI (Giao diện người dùng văn bản);
    • “mô-đun thông tin […]” để yêu cầu thông tin về mô-đun Fortran;
    • Thay vì “đặt/hiển thị in đối số khung thô”, lệnh “đặt/hiển thị in đối số khung thô” được đề xuất (sử dụng dấu gạch ngang thay vì dấu cách làm dấu phân cách);
  • Trong giao diện phần mềm điều khiển GDB / MI đã thêm các lệnh mới “-complete”, “-catch-throw”, “-catch-rethrow”, “-catch-catch”, “-symbol-info-functions”, “-symbol-info-types”,
    "-symbol-info-variables", "-symbol-info-modules", "-symbol-info-module-functions" và "-symbol-info-module-variables" tương đương với các lệnh GDB tương tự. Theo mặc định, phiên bản thứ ba của trình thông dịch MI được kích hoạt (-i=mi3);

  • Đã thêm các biến tích hợp mới:
    • $_gdb_major, $_gdb_minor;
    • $_gdb_setting, $_gdb_setting_str, $_gdb_maint_setting,
    • $_gdb_maint_setting_str
    • $_cimag, $_creal
    • $_shell_exitcode, $_shell_exitsignal
  • Đã thêm tùy chọn “--with-system-gdbinit-dir” vào tập lệnh xây dựng cấu hình để xác định đường dẫn đến tệp hệ thống gdbinit;
  • Một số cải tiến đã được thực hiện đối với API Python. Đã thêm khả năng xây dựng bằng Python 3 trên Windows;
  • Các yêu cầu đối với môi trường lắp ráp đã được tăng lên. Việc xây dựng GDB và GDBserver hiện yêu cầu ít nhất GNU make 3.82. Khi xây dựng bằng thư viện readline bên ngoài, cần có ít nhất GNU readline 7.0.

Nguồn: opennet.ru

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