GDB 11 debugger itusilẹ

Itusilẹ ti GDB 11.1 debugger ti gbekalẹ (itusilẹ akọkọ ti jara 11.x, ẹka 11.0 ti lo fun idagbasoke). GDB ṣe atilẹyin n ṣatunṣe aṣiṣe ipele orisun fun ọpọlọpọ awọn ede siseto (Ada, C, C ++, Objective-C, Pascal, Go, Rust, bbl) lori ọpọlọpọ ohun elo (i386, amd64, ARM, Power, Sparc, RISC) - V, ati bẹbẹ lọ) ati awọn iru ẹrọ sọfitiwia (GNU/Linux, *BSD, Unix, Windows, macOS).

Awọn ilọsiwaju bọtini:

  • TUI (Iro-ọrọ Olumulo Ọrọ) ti ṣafikun atilẹyin fun awọn iṣe Asin ati agbara lati yi lọ akoonu pẹlu kẹkẹ Asin. Ṣiṣẹ firanšẹ siwaju awọn akojọpọ bọtini si GDB ti ko ṣe ilana ni TUI.
  • Atilẹyin ti a ṣafikun fun ẹrọ ARMv8.5 MTE (MemTag, Ifaagun Tagging Memory), eyiti o fun ọ laaye lati di awọn afi si iṣẹ ipin iranti kọọkan ati ṣeto ayẹwo ijuboluwole nigbati o wọle si iranti, eyiti o gbọdọ ni nkan ṣe pẹlu tag to tọ. Ilana Iṣakoso Debug Latọna jijin n pese atilẹyin fun awọn idii “qMemTags” ati “QMemTags” fun awọn ami abuda si iranti.
  • Imọye fun kika awọn faili iṣeto ni ti yipada. Faili .gdbinit ti wa ni ti ṣayẹwo ni ọna atẹle: $XDG_CONFIG_HOME/gdb/gdbinit, $HOME/.config/gdb/gdbinit ati $HOME/.gdbinit. Awon. akọkọ ni konfigi subdirectory, ati ki o nikan ki o si ni ile liana.
  • Ninu aṣẹ “Bireki […] ti o ba jẹ CONDITION”, iṣẹjade aṣiṣe yoo duro nigbati ipo kan ko ba wulo ni awọn aaye kan, ti ipo naa ba wulo ni o kere ju ọran kan.
  • Atilẹyin ti a ṣafikun fun ṣiṣatunṣe awọn idalenu mojuto ti ipilẹṣẹ fun awọn eto Cygwin ti a ṣajọpọ fun faaji x86_64.
  • Atilẹyin ti a ṣafikun fun awọn oriṣi aaye ti o wa titi, bakanna bi DW_AT_GNU_numerator ati awọn iduro DW_AT_GNU_denominator.
  • Ṣafikun eto “ibẹrẹ-ni idakẹjẹ tan | pipa”; nigbati "tan", iru si aṣayan "-silent".
  • Aṣẹ “ptype” n ṣe imuse awọn aṣayan /x ati “/d” lati yan hexadecimal tabi eleemewa nigbati awọn iwọn ati awọn aiṣedeede han. Ṣafikun eto “oritẹ titẹ hex loju | pipa” lati lo awọn iye hexadecimal ninu igbejade pipaṣẹ 'ptype'.
  • Ninu aṣẹ “ẹni ti o kere”, nigba ti a pe laisi awọn ariyanjiyan, a ti pese abajade ti ohun ti n ṣatunṣe aṣiṣe lọwọlọwọ.
  • Ijade ti aṣẹ “orisun alaye” ti tun ṣiṣẹ.
  • Aṣẹ ti a ṣafikun “iwaju ti ikede aṣa | abẹlẹ | kikankikan" lati ṣakoso ara nọmba ti ikede.
  • Awọn aṣayan laini aṣẹ tuntun ti a ṣafikun: “—early-init-command” (“-eix”), “—early-init-eval-command” (“-eiex”), “—oludaniloju” (fun awọn aṣẹ-fi sii-break-fi sii) ' ati '-dprintf-insert'), "-force-condition" (fun awọn '-break-insert' ati '-dprintf-insert') "-force" (fun '-break-condition 'aṣẹ).
  • Aṣẹ “-file-list-exec-source-files” gba ọ laaye lati pato awọn ikosile deede lati ṣe àlẹmọ awọn faili orisun lati ṣiṣẹ. Aaye 'atunṣe-kika ni kikun' ti jẹ afikun si iṣẹjade lati ṣe afihan iwọn ti alaye ti n ṣatunṣe aṣiṣe ti kojọpọ.
  • Awọn ilọsiwaju ti ṣe si Python API. Awọn ọna tuntun ti a ṣafikun gdb.Frame.level () ati db.PendingFrame.level () lati da ipele akopọ pada fun ohun fireemu. Nigba ti a catchpoint wa ni jeki, Python API idaniloju wipe gdb.BreakpointEvent ti wa ni rán dipo ti gdb.StopEvent. Awọn eto ti a fikun "python ignore-environment on|papa" lati foju kọ awọn oniyipada ayika ati "python dont-write-bytecode auto|tan|pa" lati mu kikọ bytecode ṣiṣẹ.
  • Awọn ilọsiwaju ti ṣe si Guile API. Awọn ilana titun iye-itọkasi-iye, iye-rvalue-itọkasi-iye ati iye-const-iye ti a ti fi kun.
  • Awọn igbẹkẹle ijọ ti o nilo pẹlu ile-ikawe GMP (GNU Multiple Precision Arithmetic).
  • Atilẹyin fun iru ẹrọ Symbian ARM (apa*-*-symbianelf*) ti dawọ duro.

orisun: opennet.ru

Fi ọrọìwòye kun