Έκδοση του GNU Binutils 2.34

Εισήχθη απελευθέρωση ενός συνόλου βοηθητικών προγραμμάτων συστήματος GNU Binutils 2.34, το οποίο περιλαμβάνει προγράμματα όπως GNU linker, GNU assembler, nm, objdump, strings, strip.

В το νέο εκδοχή:

  • Προστέθηκε υποστήριξη υπηρεσίας εντοπισμός σφαλμάτων, που είναι ένας διακομιστής HTTP για την παροχή πληροφοριών εντοπισμού σφαλμάτων ELF/DWARF και πηγαίο κώδικα. Κατά τη δημιουργία Binutils με υποστήριξη εντοπισμού σφαλμάτων, τα βοηθητικά προγράμματα readelf και objdump μπορούν να συνδεθούν με διακομιστές εντοπισμού σφαλμάτων για λήψη πληροφοριών εντοπισμού σφαλμάτων που λείπουν σχετικά με τα αρχεία που υποβάλλονται σε επεξεργασία. Για συνελεύσεις binutils με τον εντοπισμό σφαλμάτων στο σενάριο διαμόρφωσης, θα πρέπει να καθορίσετε την επιλογή "--with-debuginfod" και να παρέχετε πρόσβαση στη βιβλιοθήκη libdebuginfod που παρέχεται στο κιτ ελφουτίλς;
  • Η επιλογή «--visualize-jumps» έχει προστεθεί στον αποσυναρμολογητή (objdump —disassemble) για τη δημιουργία γραφικών ascii με οπτικοποίηση των μεταβάσεων, που ορίζει σαφώς τη σχέση μεταξύ του σημείου στόχου και της πηγής άλματος στη ροή εντολών. Η οπτικοποίηση λειτουργεί για αρχιτεκτονικές x86, x86_64 και ARM.

    c6: | | \———-> be 00 00 00 00 mov $0x0,%esi
    γβ: | | /—-> 48 8b 3d 00 00 00 00 mov 0x0(%rip),%rdi # d2
    δ2: | | | 31 c0 xor %eax,%eax
    δ4: | | | //—e8 00 00 00 00 callq d9
    d9: | | | \-> bf 02 00 00 00 mov $0x2,%edi
    de: | +————|—— e8 00 00 00 00 callq e3
    e3: | \————|—-> 48 89 da mov %rbx,%rdx
    ε6: | | είναι 00 00 00 00 mov $0x0,%esi
    eb: | \—— eb de jmp cb
    ed: \——————-> 48 8b 16 mov (%rsi),%rdx

  • Υποστήριξη για τη δημιουργία αρχείων ELF για την αρχιτεκτονική Z80 έχει προστεθεί στο assembler και το linker (υποστηρίζονται οι επεξεργαστές Zilog Z180 και Zilog eZ80 σε λειτουργίες ADL και Z80).
  • Η επιλογή "-output" προστέθηκε στο βοηθητικό πρόγραμμα "ar" για να καθορίσετε τον κατάλογο για εξαγωγή από το αρχείο.
  • Η επιλογή "--keep-section" έχει προστεθεί στα βοηθητικά προγράμματα "objcopy" και "strip" για να αποτραπεί η διαγραφή της καθορισμένης ενότητας.

Πηγή: opennet.ru

Προσθέστε ένα σχόλιο