GNU Binary Utilities
Encyclopedia
The GNU Binary Utilities, or binutils, comprise a collection of programming tool
s for the manipulation of object code
in various object file formats. The current versions were originally written by programmers at Cygnus Solutions
using the Binary File Descriptor library (libbfd). They are typically used in conjunction with GNU Compiler Collection
, make, and GDB
.
(GAS) and GNU Linker (GLD) were included in releases, since their functionality is so closely related.
Most of the binutils are rather simple programs. The Binary File Descriptor library and libopcodes libraries, which they share, encapsulate most of the complexity.
The original BFD versions were written by David Henkel-Wallace and Steve Chamberlain. Past maintainers have included Ken Raeburn and Ian Lance Taylor. the current maintainer is Nick Clifton.
Binutils for Linux is maintained by H.J. Lu.
Programming tool
A programming tool or software development tool is a program or application that software developers use to create, debug, maintain, or otherwise support other programs and applications...
s for the manipulation of object code
Object code
Object code, or sometimes object module, is what a computer compiler produces. In a general sense object code is a sequence of statements in a computer language, usually a machine code language....
in various object file formats. The current versions were originally written by programmers at Cygnus Solutions
Cygnus Solutions
Cygnus Solutions, originally Cygnus Support, was founded in 1989 by John Gilmore, Michael Tiemann and David Henkel-Wallace to provide commercial support for free software...
using the Binary File Descriptor library (libbfd). They are typically used in conjunction with GNU Compiler Collection
GNU Compiler Collection
The GNU Compiler Collection is a compiler system produced by the GNU Project supporting various programming languages. GCC is a key component of the GNU toolchain...
, make, and GDB
GNU Debugger
The GNU Debugger, usually called just GDB and named gdb as an executable file, is the standard debugger for the GNU software system. It is a portable debugger that runs on many Unix-like systems and works for many programming languages, including Ada, C, C++, Objective-C, Free Pascal, Fortran, Java...
.
History
Originally the package consisted of only the minor utilities, but later the GNU AssemblerGNU Assembler
The GNU Assembler, commonly known as GAS , is the assembler used by the GNU Project. It is the default back-end of GCC. It is used to assemble the GNU operating system and the Linux kernel, and various other software. It is a part of the GNU Binutils package.GAS' executable is named after as, a...
(GAS) and GNU Linker (GLD) were included in releases, since their functionality is so closely related.
Most of the binutils are rather simple programs. The Binary File Descriptor library and libopcodes libraries, which they share, encapsulate most of the complexity.
The original BFD versions were written by David Henkel-Wallace and Steve Chamberlain. Past maintainers have included Ken Raeburn and Ian Lance Taylor. the current maintainer is Nick Clifton.
Binutils for Linux is maintained by H.J. Lu.
Commands
The binutils include the following commands:as |
assembler popularly known as GAS (Gnu ASsembler) |
ld |
linker |
gprof |
profiler Performance analysis In software engineering, profiling is a form of dynamic program analysis that measures, for example, the usage of memory, the usage of particular instructions, or frequency and duration of function calls... |
addr2line |
convert address to file and line |
ar |
create, modify, and extract from archives Archive file An archive file is a file that is composed of one or more files along with metadata that can include source volume and medium information, file directory structure, error detection and recovery information, file comments, and usually employs some form of lossless compression. Archive files may be... |
c++filt |
demangling filter for C++ C++ C++ is a statically typed, free-form, multi-paradigm, compiled, general-purpose programming language. It is regarded as an intermediate-level language, as it comprises a combination of both high-level and low-level language features. It was developed by Bjarne Stroustrup starting in 1979 at Bell... symbols |
dlltool |
creation of Windows dynamic-link libraries Dynamic-link library Dynamic-link library , or DLL, is Microsoft's implementation of the shared library concept in the Microsoft Windows and OS/2 operating systems... |
gold |
alternative linker |
nlmconv |
object file conversion to a NetWare Loadable Module |
nm |
list symbols in object files |
objcopy |
copy object files, possibly making changes |
objdump |
dump information about object files |
ranlib |
generate indexes for archives |
readelf |
display content of ELF Executable and Linkable Format In computing, the Executable and Linkable Format is a common standard file format for executables, object code, shared libraries, and core dumps. First published in the System V Application Binary Interface specification, and later in the Tool Interface Standard, it was quickly accepted among... files |
size |
list total and section sizes |
strings |
list printable strings |
strip |
remove symbols from an object file |
windmc |
generates Windows message resources |
windres |
compiler for Windows resource Resource (Windows) In Microsoft Windows, resources are read-only data embedded in EXE, DLL, CPL or MUI files.The Windows API provides for easy access to all applications' resources.-Types:... files |
See also
- Coreutils
- List of Unix utilities
- GNU DebuggerGNU DebuggerThe GNU Debugger, usually called just GDB and named gdb as an executable file, is the standard debugger for the GNU software system. It is a portable debugger that runs on many Unix-like systems and works for many programming languages, including Ada, C, C++, Objective-C, Free Pascal, Fortran, Java...