GDB 11 рдбрд┐рдмрдЧрд░ рд░рд┐рд▓реАрдЬрд╝

GDB 11.1 рдбрд┐рдмрдЧрд░ рдХреА рд░рд┐рд▓реАрдЬрд╝ рдкреНрд░рд╕реНрддреБрдд рдХреА рдЧрдИ рд╣реИ (11.x рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХреА рдкрд╣рд▓реА рд░рд┐рд▓реАрдЬрд╝, 11.0 рд╢рд╛рдЦрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛)ред рдЬреАрдбреАрдмреА рд╡рд┐рднрд┐рдиреНрди рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ (i386, amd64, ARM, рдкрд╛рд╡рд░, рд╕реНрдкрд╛рд░реНрдХ, рдЖрд░рдЖрдИрдПрд╕рд╕реА) рдкрд░ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛рдУрдВ (рдПрдбреАрдП, рд╕реА, рд╕реА++, рдСрдмреНрдЬреЗрдХреНрдЯрд┐рд╡-рд╕реА, рдкрд╛рд╕реНрдХрд▓, рдЧреЛ, рд░рд╕реНрдЯ, рдЖрджрд┐) рдХреА рдПрдХ рд╡рд┐рд╕реНрддреГрдд рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХреЗ рд▓рд┐рдП рд╕реНрд░реЛрдд-рд╕реНрддрд░реАрдп рдбрд┐рдмрдЧрд┐рдВрдЧ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред - рд╡реА, рдЖрджрд┐) рдФрд░ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо (рдЬреАрдПрдирдпреВ/рд▓рд┐рдирдХреНрд╕, *рдмреАрдПрд╕рдбреА, рдпреВрдирд┐рдХреНрд╕, рд╡рд┐рдВрдбреЛрдЬ, рдореИрдХрдУрдПрд╕)ред

рдореБрдЦреНрдп рд╕реБрдзрд╛рд░:

  • рдЯреАрдпреВрдЖрдИ (рдЯреЗрдХреНрд╕реНрдЯ рдпреВрдЬрд░ рдЗрдВрдЯрд░рдлреЗрд╕) рдиреЗ рдорд╛рдЙрд╕ рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдФрд░ рдорд╛рдЙрд╕ рд╡реНрд╣реАрд▓ рдХреЗ рд╕рд╛рде рд╕рд╛рдордЧреНрд░реА рдХреЛ рд╕реНрдХреНрд░реЙрд▓ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдЬреЛрдбрд╝реА рд╣реИред рдЬреАрдбреАрдмреА рдореЗрдВ рдЙрди рдХреБрдВрдЬреА рд╕рдВрдпреЛрдЬрдиреЛрдВ рдХреЛ рдЕрдЧреНрд░реЗрд╖рд┐рдд рдХрд░рдирд╛ рд╕рдХреНрд╖рдо рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдЬреЛ рдЯреАрдпреВрдЖрдИ рдореЗрдВ рд╕рдВрд╕рд╛рдзрд┐рдд рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВред
  • ARMv8.5 MTE (рдореЗрдордЯреИрдЧ, рдореЗрдореЛрд░реА рдЯреИрдЧрд┐рдВрдЧ рдПрдХреНрд╕рдЯреЗрдВрд╢рди) рддрдВрддреНрд░ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛, рдЬреЛ рдЖрдкрдХреЛ рдкреНрд░рддреНрдпреЗрдХ рдореЗрдореЛрд░реА рдЖрд╡рдВрдЯрди рдСрдкрд░реЗрд╢рди рдореЗрдВ рдЯреИрдЧ рдХреЛ рдмрд╛рдВрдзрдиреЗ рдФрд░ рдореЗрдореЛрд░реА рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдкрд░ рдПрдХ рдкреЙрдЗрдВрдЯрд░ рдЬрд╛рдВрдЪ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдЬреЛ рд╕рд╣реА рдЯреИрдЧ рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рд░рд┐рдореЛрдЯ рдбрд┐рдмрдЧ рдХрдВрдЯреНрд░реЛрд▓ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдЯреИрдЧ рдХреЛ рдореЗрдореЛрд░реА рдореЗрдВ рдмрд╛рдЗрдВрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП "qMemTags" рдФрд░ "QMemTags" рдкреИрдХреЗрдЬ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред
  • рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдкрдврд╝рдиреЗ рдХрд╛ рддрд░реНрдХ рдмрджрд▓ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред .gdbinit рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЕрдм рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреНрд░рдо рдореЗрдВ рдЬрд╛рдВрдЪрд╛ рдЧрдпрд╛ рд╣реИ: $XDG_CONFIG_HOME/gdb/gdbinit, $HOME/.config/gdb/gdbinit рдФрд░ $HOME/.gdbinitред рд╡реЗред рдкрд╣рд▓реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдЙрдкрдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ, рдФрд░ рдЙрд╕рдХреЗ рдмрд╛рдж рд╣реА рд╣реЛрдо рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВред
  • "рдмреНрд░реЗрдХ [...] рдпрджрд┐ рд╢рд░реНрдд" рдХрдорд╛рдВрдб рдореЗрдВ, рдХреБрдЫ рд╕реНрдерд╛рдиреЛрдВ рдкрд░ рдХреЛрдИ рд╢рд░реНрдд рдЕрдорд╛рдиреНрдп рд╣реЛрдиреЗ рдкрд░ рддреНрд░реБрдЯрд┐ рдЖрдЙрдЯрдкреБрдЯ рд░реЛрдХ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдпрджрд┐ рд╢рд░реНрдд рдХрдо рд╕реЗ рдХрдо рдПрдХ рдорд╛рдорд▓реЗ рдореЗрдВ рдорд╛рдиреНрдп рд╣реИред
  • x86_64 рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдХреЗ рд▓рд┐рдП рд╕рдВрдХрд▓рд┐рдд рд╕рд┐рдЧреНрд╡рд┐рди рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЗ рд▓рд┐рдП рдЙрддреНрдкрдиреНрди рдХреЛрд░ рдбрдВрдк рдбрд┐рдмрдЧрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ред
  • рдирд┐рд╢реНрдЪрд┐рдд-рдмрд┐рдВрджреБ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рд╕рд╛рде-рд╕рд╛рде DW_AT_GNU_numerator рдФрд░ DW_AT_GNU_denominator рд╕реНрдерд┐рд░рд╛рдВрдХ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ред
  • "рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк-рдЪреБрдкрдЪрд╛рдк рдЪрд╛рд▓реВ|рдмрдВрдж" рд╕реЗрдЯрд┐рдВрдЧ рдЬреЛрдбрд╝реА рдЧрдИ; рдЬрдм "рдЪрд╛рд▓реВ", "-рд╕рд╛рдЗрд▓реЗрдВрдЯ" рд╡рд┐рдХрд▓реНрдк рдХреЗ рд╕рдорд╛рдиред
  • рдЖрдХрд╛рд░ рдФрд░ рдСрдлрд╕реЗрдЯ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддреЗ рд╕рдордп рд╣реЗрдХреНрд╕рд╛рдбреЗрд╕рд┐рдорд▓ рдпрд╛ рджрд╢рдорд▓рд╡ рдХрд╛ рдЪрдпрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП "ptype" рдХрдорд╛рдВрдб /x" рдФрд░ "/d" рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИред 'рдкреАрдЯрд╛рдЗрдк' рдХрдорд╛рдВрдб рдХреЗ рдЖрдЙрдЯрдкреБрдЯ рдореЗрдВ рд╣реЗрдХреНрд╕рд╛рдбреЗрд╕рд┐рдорд▓ рдорд╛рдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП "рдкреНрд░рд┐рдВрдЯ рдЯрд╛рдЗрдк рд╣реЗрдХреНрд╕ рдСрди|рдСрдл" рд╕реЗрдЯрд┐рдВрдЧ рдЬреЛрдбрд╝реА рдЧрдИред
  • "рдЕрд╡рд░" рдХрдорд╛рдВрдб рдореЗрдВ, рдЬрдм рдмрд┐рдирд╛ рддрд░реНрдХ рдХреЗ рдХреЙрд▓ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рд╡рд░реНрддрдорд╛рди рдбрд┐рдмрдЧрд┐рдВрдЧ рдСрдмреНрдЬреЗрдХреНрдЯ (рдЕрд╡рд░) рдХрд╛ рдЖрдЙрдЯрдкреБрдЯ рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
  • "рд╕реВрдЪрдирд╛ рд╕реНрд░реЛрдд" рдХрдорд╛рдВрдб рдХреЗ рдЖрдЙрдЯрдкреБрдЯ рдкрд░ рджреЛрдмрд╛рд░рд╛ рдХрд╛рдо рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
  • рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рдЖрджреЗрд╢ "рд╢реИрд▓реА рд╕рдВрд╕реНрдХрд░рдг рдЕрдЧреНрд░рднреВрдорд┐ |"ред рдкреГрд╖реНрдарднреВрдорд┐ | рддреАрд╡реНрд░рддрд╛" рд╕рдВрд╕реНрдХрд░рдг рдХреНрд░рдорд╛рдВрдХрди рд╢реИрд▓реА рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред
  • рдирдП рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рд╡рд┐рдХрд▓реНрдк рдЬреЛрдбрд╝реЗ рдЧрдП: "-рдЕрд░реНрд▓реА-рдЗрдирд┐рдЯ-рдХрдорд╛рдВрдб" ("-рдИрдПрдХреНрд╕"), "-рдЕрд░реНрд▓реА-рдЗрдирд┐рдЯ-рдЗрд╡рд▓-рдХрдорд╛рдВрдб" ("-рдИрдПрдХреНрд╕"), "-рдХреНрд╡рд╛рд▓реАрдлрд╛рдЗрдб" ('-рдмреНрд░реЗрдХ-рдЗрдиреНрд╕рд░реНрдЯ рдХрдорд╛рдВрдб рдХреЗ рд▓рд┐рдП) )' рдФрд░ '-dprintf-insert'), "--force-condition" ('-break-insert' рдФрд░ '-dprintf-insert' рдХрдорд╛рдВрдб рдХреЗ рд▓рд┐рдП), "--force" ('-break-condition рдХреЗ рд▓рд┐рдП) ' рдЖрдЬреНрдЮрд╛)ред
  • '-рдлрд╝рд╛рдЗрд▓-рд╕реВрдЪреА-рдирд┐рд╖реНрдкрд╛рджрди-рд╕реНрд░реЛрдд-рдлрд╝рд╛рдЗрд▓реЗрдВ' рдХрдорд╛рдВрдб рдЖрдкрдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рд╣реЛрдиреЗ рд╡рд╛рд▓реА рд╕реНрд░реЛрдд рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рдпрдорд┐рдд рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдбрд┐рдмрдЧрд┐рдВрдЧ рдЬрд╛рдирдХрд╛рд░реА рдХрд┐рд╕ рд╣рдж рддрдХ рд▓реЛрдб рдХреА рдЧрдИ рд╣реИ, рдпрд╣ рдЗрдВрдЧрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдЙрдЯрдкреБрдЯ рдореЗрдВ рдПрдХ 'рдбреАрдмрдЧ-рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдкрдврд╝рд╛ рдЧрдпрд╛' рдлрд╝реАрд▓реНрдб рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рд╣реИред
  • рдкрд╛рдпрдерди рдПрдкреАрдЖрдИ рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд┐рдП рдЧрдП рд╣реИрдВред рдлрд╝реНрд░реЗрдо рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рд▓рд┐рдП рд╕реНрдЯреИрдХ рд╕реНрддрд░ рд╡рд╛рдкрд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирдИ рд╡рд┐рдзрд┐рдпрд╛рдБ gdb.Frame.level() рдФрд░ db.PendingFrame.level() рдЬреЛрдбрд╝реА рдЧрдИрдВред рдЬрдм рдХреИрдЪрдкреНрд╡рд╛рдЗрдВрдЯ рдЯреНрд░рд┐рдЧрд░ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдкрд╛рдпрдерди рдПрдкреАрдЖрдИ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ gdb.StopEvent рдХреЗ рдмрдЬрд╛рдп gdb.BreakpointEvent рднреЗрдЬрд╛ рдЬрд╛рдПред рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП "рдкрд╛рдпрдерди рдЗрдЧреНрдиреЛрд░-рдПрдирд╡рд╛рдпрд░рдореЗрдВрдЯ рдСрди|рдСрдл" рдФрд░ рдмрд╛рдЗрдЯрдХреЛрдб рд▓реЗрдЦрди рдХреЛ рдЕрдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП "рдкрд╛рдпрдерди рдбреЛрдВрдЯ-рд░рд╛рдЗрдЯ-рдмрд╛рдЗрдЯрдХреЛрдб рдСрдЯреЛ|рдСрди|рдСрдл" рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдЬреЛрдбрд╝реА рдЧрдИрдВред
  • рдЧреБрдЗрд▓ рдПрдкреАрдЖрдИ рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд┐рдП рдЧрдП рд╣реИрдВред рдирдИ рдкреНрд░рдХреНрд░рд┐рдпрд╛рдПрдВ рд╡реИрд▓реНрдпреВ-рд░реЗрдлрд░реЗрдВрд╕-рд╡реИрд▓реНрдпреВ, рд╡реИрд▓реНрдпреВ-рд░рд╡реИрд▓реНрдпреВ-рд░реЗрдлрд░реЗрдВрд╕-рд╡реИрд▓реНрдпреВ рдФрд░ рд╡реИрд▓реНрдпреВ-рдХреЙрдиреНрд╕реНрдЯ-рд╡реИрд▓реНрдпреВ рдЬреЛрдбрд╝реА рдЧрдИ рд╣реИрдВред
  • рдЖрд╡рд╢реНрдпрдХ рдЕрд╕реЗрдВрдмрд▓реА рдирд┐рд░реНрднрд░рддрд╛рдУрдВ рдореЗрдВ рдЬреАрдПрдордкреА (рдЬреАрдПрдирдпреВ рдорд▓реНрдЯреАрдкрд▓ рдкреНрд░рд┐рд╕рд┐рдЬрди рдЕрд░рд┐рдердореЗрдЯрд┐рдХ) рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╢рд╛рдорд┐рд▓ рд╣реИред
  • рдПрдЖрд░рдПрдо рд╕рд┐рдореНрдмрд┐рдпрди рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо (arm*-*-symbianelf*) рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдмрдВрдж рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

рд╕реНрд░реЛрдд: opennet.ru

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╝реЗрдВ