GNU Binutils

aus Wikipedia, der freien Enzyklopädie
GNU Binutils
Basisdaten

Entwickler GNU-Projekt
Aktuelle Version 2.39[1]
(5. August 2022)
Kategorie Programmierwerkzeug
Lizenz GPL
www.gnu.org/software/binutils

Die GNU Binary Utilities (kurz binutils) sind eine Sammlung von Programmierwerkzeugen für die Erzeugung und Manipulation von Programmen (Linken), Objektcode, Bibliotheken, Assemblersprache sowie Quellcode in verschiedenen Dateiformaten, die ursprünglich von Cygnus Solutions entwickelt wurde. Es gibt Portierungen für verschiedene Systeme, darunter die meisten UNIX-Varianten, Windows, Mac OS X und (teilw.) OS/2.[2]

Typischerweise werden sie zusammen mit der GNU Compiler Collection, make und dem GNU Debugger genutzt.

Die Binutils enthalten folgende Werkzeuge:

Tool Funktion
as Assembler
ld Linker
gprof Profiler
addr2line Adresse in Datei und Zeile konvertieren
ar Archive erstellen, extrahieren und modifizieren
c++filt Demangling-Filter für C++-Symbole
dlltool Erzeugung von Windows-DLLs
gold Weiterer Linker
nlmconv Konvertierung der Objektdatei in ein NetWare Loadable Module
nm Symbole in Objektdateien auflisten
objcopy Objektdateien kopieren und unter Umständen verändern
objdump Dump-Informationen über Objektdateien
ranlib Indexstrukturen für Archive erzeugen
readelf Inhalt von ELF-Dateien anzeigen
size Gesamt- und Teilgrößen anzeigen
strings Druckbare Strings ausgeben
strip Symbole aus einer Objektdatei entfernen
windmc Ein zu Windows kompatibler Message Compiler
windres Übersetzer für Windows-Ressourcedateien

Integration mit der Binary File Descriptor Bibliothek (BFD oder libbfd)

Ein großer Teil des Programmcodes befindet sich in der BFD-Bibliothek (

Binary File Descriptor

), die in jeweils spezifisch angepassten Versionen mit den GNU binutils und dem GNU Debugger (gdb) mitgeliefert und von den meisten enthaltenen Tools (außer gold, dem ld von Google, readelf, sowie elfedit) benutzt wird.

Des Weiteren wird z. B. die ebenfalls sehr umfangreiche opcodes-Bibliothek vom GNU Assembler und von GNU objdump genutzt.

Die ursprünglichen BFD-Versionen wurden von David Henkel-Wallace und Steve Chamberlain geschrieben. Spätere Entwickler sind Ken Raeburn und Ian Lance Taylor. Der derzeitige Maintainer ist seit 2005 Nick Clifton.

Weblinks

Einzelnachweise