GDB 8.3 atkļūdotāja laidiens

Iesniedzis atkļūdotāja izlaišana GDB 8.3, kas atbalsta avota līmeņa atkļūdošanu plašam programmēšanas valodu klāstam (Ada, C, C++, Objective-C, Pascal, Go utt.) dažādās aparatūrā (i386, amd64, ARM, Power, Sparc, RISC-V). utt.) un programmatūras platformām (GNU/Linux, *BSD, Unix, Windows, macOS).

Atslēga uzlabojumi:

  • CLI un TUI saskarnēm tagad ir iespēja definēt termināļa stilu (ir pievienota komanda “set style”). Izmantojot GNU Highlight, tiek īstenota avota teksta izcelšana;
  • Ieviests eksperimentāls atbalsts C++ pirmkoda kompilēšanai un aizstāšanai GDB kontrolētā procesā
    (mazāk). Lai strādātu, ir nepieciešama vismaz GCC 7.1b versija, kas kompilēta ar libcp1.so;

  • IPv6 atbalsts ir pievienots GDB un GDBserver. Lai iestatītu IPv6 adreses, izmantojiet formātu “[ADRESE]:PORT”;
  • RISC-V mērķa sistēmām ir pievienots atbalsts mērķa aprakstīšanai XML formātā (Mērķa apraksta formāts);
  • FreeBSD platforma nodrošina atbalstu pārtveršanas punktu uzstādīšanai
    (catchpoint) uz sistēmas izsaukumiem, izmantojot to aizstājvārdus, kas raksturīgi dažādiem ABI (piemēram, 'kevent' aizstājvārds ir pieejams 'freebsd11_kevent', lai saistītu ar veco ABI);

  • Komandai “target remote” ir pievienots atbalsts Unix ligzdām (Unix Domain socket);
  • Pievienota iespēja parādīt visus procesa atvērtos failus (komanda “info proc files”);
  • Ieviesta iespēja automātiski saglabāt DWARF simbolu indeksus diskā, lai paātrinātu tā paša izpildāmā faila turpmāko ielādi;
  • Pievienots atbalsts piekļuvei PPR, DSCR, TAR, EBB/PMU un HTM reģistriem GDBserver PowerPC GNU/Linux platformai;
  • Pievienotas jaunas komandas "set/show debug compile-cplus-types" un
    “iestatīt/rādīt atkļūdošanas izlaišanu”, lai konfigurētu datu izvadi par C++ tipa pārveidojumiem un informāciju par izlaistajiem failiem un funkcijām;

  • Pievienotas komandas "frame apply COMMAND", "taas COMMAND", "faas COMMAND", "tfaas COMMAND" komandu pielietošanai steku rāmjiem un pavedieniem;
  • Ir veikti uzlabojumi komandām “frame”, “select-frame”, “info frame”,
    — “info funkcijas”, “informācijas veidi”, “informācijas mainīgie”, “informācijas pavediens”, “info proc”;

  • Palaižot pakešrežīmā, GDB tagad atgriež kļūdas kodu 1, ja pēdējā komanda neizdodas;
  • Pievienota iespēja izveidot GDB, izmantojot GCC nodrošināto Undefined Behaviour Sanitizer;
  • Pievienoti bāzes sistēmas iestatījumi (vietējā konfigurācija, atkļūdošanai tajā pašā sistēmā) RISC-V GNU/Linux (riscv*-*-linux*) un RISC-V FreeBSD (riscv*-*-freebsd*) platformām;
  • Pievienotās mērķa konfigurācijas: CSKY ELF (csky*-*-elf), CSKY GNU/Linux (csky*-*-linux), NXP S12Z ELF (s12z-*-elf), OpenRISC GNU/Linux (vai1k *-*-linux *), RISC-V GNU/Linux (riscv*-*-linux*) un RISC-V FreeBSD (riscv*-*-freebsd*);
  • Lai atkļūdotu tajā pašā sistēmā operētājsistēmā Windows, tagad ir nepieciešama Windows XP vai jaunāka versija;
  • Python API lietošanai tagad ir nepieciešama Python 2.6 vai jaunāka versija.

Avots: opennet.ru

Pievieno komentāru