GDB 11 отладчик шығарылымы

GDB 11.1 жөндеу құралының шығарылымы ұсынылды (11.x сериясының бірінші шығарылымы, әзірлеу үшін 11.0 тармағы пайдаланылды). GDB әртүрлі аппараттық құралдарда (i386, amd64, ARM, Power, Sparc, RISC) кең ауқымды бағдарламалау тілдерінің (Ada, C, C++, Objective-C, Pascal, Go, Rust және т.б.) бастапқы деңгейіндегі жөндеуді қолдайды. - V және т.б.) және бағдарламалық платформалар (GNU/Linux, *BSD, Unix, Windows, macOS).

Негізгі жақсартулар:

  • TUI (мәтіндік пайдаланушы интерфейсі) тінтуір әрекеттерін қолдауды және тінтуір дөңгелегі арқылы мазмұнды айналдыру мүмкіндігін қосты. TUI-де өңделмеген пернелер тіркесімін GDB-ге қайта жіберу қосылды.
  • ARMv8.5 MTE (MemTag, Memory Tagging Extension) механизміне қолдау қосылды, ол әрбір жадты бөлу операциясына тегтерді байланыстыруға және жадқа қатынасу кезінде меңзерді тексеруді ұйымдастыруға мүмкіндік береді, ол дұрыс тегпен байланысты болуы керек. Қашықтан жөндеуді басқару протоколы жадқа тегтерді байланыстыру үшін «qMemTags» және «QMemTags» бумаларына қолдау көрсетеді.
  • Конфигурация файлдарын оқу логикасы өзгертілді. .gdbinit файлы енді келесі ретпен тексеріледі: $XDG_CONFIG_HOME/gdb/gdbinit, $HOME/.config/gdb/gdbinit және $HOME/.gdbinit. Анау. алдымен config ішкі каталогында, содан кейін ғана үй каталогында.
  • «БҰЗУ […] егер ШАРТ болса» пәрменінде шарт белгілі бір жерлерде жарамсыз болған кезде қате шығысы тоқтатылады, егер шарт кем дегенде бір жағдайда жарамды болса.
  • x86_64 архитектурасы үшін құрастырылған Cygwin бағдарламалары үшін жасалған негізгі демптерді жөндеуге қолдау қосылды.
  • Бекітілген нүкте түрлеріне, сонымен қатар DW_AT_GNU_numerator және DW_AT_GNU_деноминатор тұрақтыларына қолдау қосылды.
  • «Іске қосу-тыныш қосу|өшіру» параметрі қосылды; «қосулы» болғанда, «-үнсіз» опциясына ұқсас.
  • "ptype" пәрмені өлшемдер мен ығысуларды көрсету кезінде он алтылық немесе ондық сандарды таңдау үшін /x" және "/d" опцияларын жүзеге асырады. «ptype» пәрменінің шығысында он алтылық мәндерді пайдалану үшін «басып шығару түрі он алтылық қосу|өшіру» параметрі қосылды.
  • «Төменгі» пәрменінде аргументсіз шақырылғанда, ағымдағы жөндеу нысанының шығысы (төменгі) беріледі.
  • «Ақпарат көзі» пәрменінің шығысы қайта өңделді.
  • «Стиль нұсқасының алдыңғы жоспары |» пәрмені қосылды фон | Нұсқа нөмірлеу мәнерін басқару үшін қарқындылық».
  • Жаңа пәрмен жолы опциялары қосылды: “—early-init-command” (“-eix”), “—early-init-eval-command” (“-eiex”), “-qualified” ('-break-insert пәрмендері үшін) ) ' және '-dprintf-insert'), "--force-condition" ('-break-insert' және '-dprintf-insert' пәрмендері үшін), "--force" ('-break-шарт үшін) пәрмені).
  • “-file-list-exec-source-files” пәрмені өңделетін бастапқы файлдарды сүзу үшін тұрақты өрнектерді көрсетуге мүмкіндік береді. Түзету ақпаратының жүктелу дәрежесін көрсету үшін шығысқа «отладка-толық оқылған» өрісі қосылды.
  • Python API интерфейсіне жақсартулар жасалды. Frame нысаны үшін стек деңгейін қайтару үшін gdb.Frame.level() және db.PendingFrame.level() жаңа әдістер қосылды. Ұстау нүктесі іске қосылғанда, Python API gdb.StopEvent орнына gdb.BreakpointEvent жіберілуін қамтамасыз етеді. Ортаның айнымалы мәндерін елемеу үшін "python ignore-environment on|off" және байт код жазуды өшіру үшін "python dont-write-bytecode auto|on|off" параметрлері қосылды.
  • Guile API интерфейсіне жақсартулар жасалды. Мән-анықтама-мән, мән-құн-анықтама-мән және мән-const-мән жаңа процедуралар қосылды.
  • Қажетті құрастыру тәуелділіктеріне GMP (GNU Multiple Precision Arithmetic) кітапханасы кіреді.
  • ARM Symbian платформасына (arm*-*-symbianelf*) қолдау көрсету тоқтатылды.

Ақпарат көзі: opennet.ru

пікір қалдыру