انتشار دیباگر GDB 11

انتشار دیباگر GDB 11.1 ارائه شده است (اولین نسخه از سری 11.x، شاخه 11.0 برای توسعه استفاده شد). GDB از اشکال زدایی در سطح منبع برای طیف گسترده ای از زبان های برنامه نویسی (Ada، C، C++، Objective-C، Pascal، Go، Rust و غیره) روی سخت افزارهای مختلف (i386، amd64، ARM، Power، Sparc، RISC) پشتیبانی می کند. - V و غیره) و پلتفرم های نرم افزاری (GNU/Linux، *BSD، Unix، Windows، macOS).

پیشرفت های کلیدی:

  • TUI (رابط کاربری متنی) پشتیبانی از اقدامات ماوس و توانایی اسکرول محتوا با چرخ ماوس را اضافه کرده است. ارسال کلیدهای ترکیبی به GDB که در TUI پردازش نمی‌شوند فعال شد.
  • پشتیبانی از مکانیزم ARMv8.5 MTE (MemTag، Memory Tagging Extension) اضافه شده است، که به شما امکان می دهد برچسب ها را به هر عملیات تخصیص حافظه متصل کنید و هنگام دسترسی به حافظه، یک بررسی اشاره گر را سازماندهی کنید، که باید با برچسب صحیح مرتبط باشد. پروتکل کنترل اشکال زدایی از راه دور از بسته های "qMemTags" و "QMemTags" برای اتصال برچسب ها به حافظه پشتیبانی می کند.
  • منطق خواندن فایل های پیکربندی تغییر کرده است. اکنون فایل .gdbinit به ترتیب زیر بررسی می شود: $XDG_CONFIG_HOME/gdb/gdbinit، $HOME/.config/gdb/gdbinit و $HOME/.gdbinit. آن ها ابتدا در دایرکتوری فرعی config و تنها پس از آن در فهرست اصلی.
  • در دستور "شکست [...] اگر CONDITION"، خروجی خطا زمانی که یک شرط در مکان های خاص نامعتبر باشد، متوقف می شود، اگر شرط حداقل در یک مورد معتبر باشد.
  • پشتیبانی اضافه شده برای اشکال زدایی هسته dump های تولید شده برای برنامه های Cygwin که برای معماری x86_64 کامپایل شده اند.
  • پشتیبانی از انواع نقطه ثابت، و همچنین DW_AT_GNU_numerator و DW_AT_GNU_denominator ثابت اضافه شده است.
  • اضافه شده "راه اندازی بی سر و صدا روشن | خاموش" تنظیم. هنگامی که "روشن"، مشابه گزینه "-silent".
  • دستور "ptype" گزینه های /x" و "/d" را برای انتخاب هگزا دسیمال یا اعشاری هنگام نمایش اندازه ها و افست ها پیاده سازی می کند. برای استفاده از مقادیر هگزا دسیمال در خروجی فرمان «ptype» تنظیمات «نوع چاپ هگزا روشن|خاموش» اضافه شد.
  • در دستور "inferior"، هنگامی که بدون آرگومان فراخوانی می شود، خروجی شی اشکال زدایی فعلی (inferior) ارائه می شود.
  • خروجی فرمان "منبع اطلاعات" دوباره کار شده است.
  • اضافه شدن دستور “style version foreground | پس زمینه | intensity" برای کنترل سبک شماره گذاری نسخه.
  • گزینه‌های جدید خط فرمان اضافه شده است: "-Early-init-Command" ("-eix")، "-Early-init-eval-Command" ("-eiex")، "-qualified" (برای دستورات "-break-insert" ) ' و '-dprintf-insert')، "--force-condition" (برای دستورات "-break-insert" و "-dprintf-insert")، "--force" (برای "-break-condition" فرمان).
  • دستور '-file-list-exec-source-files' به شما امکان می دهد عبارات منظم را برای فیلتر کردن فایل های منبع برای پردازش مشخص کنید. یک فیلد «اشکال‌زدایی کامل خوانده شده» به خروجی اضافه شده است تا میزان بارگیری اطلاعات اشکال‌زدایی را نشان دهد.
  • بهبودهایی در API پایتون انجام شده است. روش‌های جدید gdb.Frame.level() و db.PendingFrame.level() برای برگرداندن سطح پشته برای یک شی Frame اضافه شده است. هنگامی که یک نقطه اتصال راه اندازی می شود، API پایتون تضمین می کند که gdb.BreakpointEvent به جای gdb.StopEvent ارسال می شود. تنظیمات «python ignore-environment on|off» را برای نادیده گرفتن متغیرهای محیط و «python dont-write-bytecode auto|on|off» را برای غیرفعال کردن نوشتن بایت کد اضافه کرد.
  • بهبودهایی در Guile API انجام شده است. رویه های جدید value-reference-value، value-rvalue-reference-value و value-const-value اضافه شده اند.
  • وابستگی های اسمبلی مورد نیاز شامل کتابخانه GMP (GNU Multiple Precision Arithmetic) است.
  • پشتیبانی از پلتفرم سیمبین ARM (arm*-*-symbianelf*) متوقف شده است.

منبع: opennet.ru

اضافه کردن نظر