GDB 13 ڈیبگر ریلیز

GDB 13.1 ڈیبگر کی ریلیز پیش کی گئی ہے (13.x سیریز کی پہلی ریلیز، 13.0 برانچ کو ترقی کے لیے استعمال کیا گیا تھا)۔ GDB مختلف ہارڈ ویئر (i2, amd386) پر پروگرامنگ زبانوں (Ada, C, C++, D, Fortran, Go, Objective-C, Modula-64, Pascal, Rust, وغیرہ) کی وسیع رینج کے لیے سورس لیول ڈیبگنگ کی حمایت کرتا ہے۔ , ARM, Power, Sparc, RISC-V, وغیرہ) اور سافٹ ویئر پلیٹ فارمز (GNU/Linux, *BSD, Unix, Windows, macOS)۔

کلیدی اصلاحات:

  • GNU/Linux/LoongArch اور GNU/Linux/CSKY آرکیٹیکچرز پر ڈیبگر اور GDBserver چلانے کے لیے معاونت شامل کی گئی۔
  • ونڈوز پلیٹ فارم پر غیر مطابقت پذیر موڈ (async) میں کام کرنے کے لیے سپورٹ کو نافذ کر دیا گیا ہے۔
  • فری بی ایس ڈی پلیٹ فارم پر، ARM اور AArch64 آرکیٹیکچرز کے لیے TLS (تھریڈ لوکل سٹوریج) متغیرات کے لیے سپورٹ شامل کیا گیا ہے، اور AArch64 فن تعمیر کے لیے ہارڈویئر بریک پوائنٹس (واچ پوائنٹ) کو استعمال کرنے کی صلاحیت فراہم کی گئی ہے۔
  • لونگ آرچ سسٹمز پر GNU/Linux ماحول میں، فلوٹنگ پوائنٹ کیلکولیشن کے لیے سپورٹ شامل کر دی گئی ہے۔
  • نئی کمانڈز "مینٹیننس سیٹ ignore-prologue-end-flag|libopcodes-styling" اور "مینٹیننس پرنٹ فریم آئی ڈی" کے ساتھ ساتھ جداگانہ آؤٹ پٹ کے انداز کو کنٹرول کرنے کے لیے کمانڈز (سیٹ سٹائل کو جدا کرنے والا *)۔
  • چار بائٹ گروپس میں بائنری اقدار کے ڈسپلے کو کنٹرول کرنے کے لیے "سیٹ پرنٹ نِبلز [آن|آف]" اور "شو پرنٹ نِبلز" کمانڈز شامل کیے گئے۔
  • Python API میں بہتری لائی گئی ہے۔ جدا کرنے کی ہدایات کے لیے ایک API شامل کر دیا گیا ہے، gdb.BreakpointLocation کی قسم کو نافذ کر دیا گیا ہے، اور فنکشنز gdb.format_address، gdb.current_language اور gdb.print_options کو شامل کر دیا گیا ہے۔
  • GDB/MI مینجمنٹ انٹرفیس کے پہلے ورژن کو فرسودہ کر دیا گیا ہے اور اسے GDB 14 میں ہٹا دیا جائے گا۔
  • ELF فائلوں میں zstd الگورتھم کا استعمال کرتے ہوئے کمپریسڈ ڈیبگ سیکشنز کے لیے سپورٹ شامل کیا گیا۔
  • نئے بلٹ ان متغیرات شامل کیے گئے: $_inferior_thread_count، $_hit_bpnum، $_hit_locno۔
  • 'Dassemble /r' اور 'record instruction-history/r' کمانڈز کے آؤٹ پٹ فارمیٹ کو objdump کے آؤٹ پٹ سے ملنے کے لیے ایڈجسٹ کیا گیا ہے۔ پرانے فارمیٹ کو واپس کرنے کے لیے، "/b" موڈ شامل کر دیا گیا ہے۔
  • TUI (ٹیکسٹ یوزر انٹرفیس) میں، موجودہ پوزیشن کے اشارے کے ذریعہ نمایاں کردہ سورس اور اسمبلی کوڈ کی اسٹائلنگ غیر فعال ہے۔
  • صارف کے احکامات کو دستاویز کرنے کے لیے "دستاویز" کمانڈ استعمال کرنا ممکن ہے۔
  • ARMv8.5 MTE (MemTag، Memory Tagging Extension) میکانزم کا استعمال کرتے وقت استعمال ہونے والے میموری ٹیگ ڈیٹا کے ساتھ ڈمپ بنانے کی صلاحیت شامل کی گئی ہے، جو آپ کو ہر میموری ایلوکیشن آپریشن میں ٹیگز کو باندھنے اور میموری تک رسائی حاصل کرتے وقت ایک پوائنٹر چیک کو منظم کرنے کی اجازت دیتا ہے، جس کا ہونا ضروری ہے۔ صحیح ٹیگ کے ساتھ منسلک.
  • DBX مطابقت موڈ کو بند کر دیا گیا ہے۔
  • Python 2 کا استعمال کرتے ہوئے عمارت کے لیے سپورٹ بند کر دی گئی ہے۔
  • کمانڈز "سیٹ debug aix-solib on|off"، "show debug aix-solib"، "set debug solib-frv on|off" اور "debug solib-frv دکھائیں" کو ہٹا دیا گیا ہے، اور کمانڈز "set/show debug" solib کے بجائے استعمال کیا جانا چاہئے۔"

ماخذ: opennet.ru

نیا تبصرہ شامل کریں