The GNU Binary Utilities, or , are a set of
programming tools for creating and managing binary programs,
object files
An object file is a computer file containing object code, that is, machine code output of an assembler or compiler. The object code is usually relocatable, and not usually directly executable. There are various formats for object files, and the s ...
, libraries, profile data, and
assembly source code.
Tools
They were originally written by programmers at
Cygnus Solutions.
The GNU Binutils are typically used in conjunction with
compiler
In computing, a compiler is a computer program that translates computer code written in one programming language (the ''source'' language) into another language (the ''target'' language). The name "compiler" is primarily used for programs th ...
s such as the
GNU Compiler Collection
The GNU Compiler Collection (GCC) is an optimizing compiler produced by the GNU Project supporting various programming languages, hardware architectures and operating systems. The Free Software Foundation (FSF) distributes GCC as free softwa ...
(), build tools like , and the
GNU Debugger ().
Through the use of the
Binary File Descriptor library (), most tools support the various object file formats supported by .
Commands
The include the following commands:
elfutils
Ulrich Drepper wrote , to partially replace GNU Binutils, purely for
Linux and with support only for
ELF
An elf () is a type of humanoid supernatural being in Germanic mythology and folklore. Elves appear especially in North Germanic mythology. They are subsequently mentioned in Snorri Sturluson's Icelandic Prose Edda. He distinguishes ...
and
DWARF. It distributes three libraries with it for programmatic access.
elfutils at Drepper's home
/ref>
See also
* GNU Core Utilities
The GNU Core Utilities or coreutils is a package of GNU software containing implementations for many of the basic tools, such as cat, ls, and rm, which are used on Unix-like operating systems.
In September 2002, the ''GNU coreutils'' were ...
* GNU Debugger
*ldd (Unix)
ldd (''List Dynamic Dependencies'') is a *nix utility that prints the shared libraries required by each program or shared library specified on the command line. It was developed by Roland McGrath and Ulrich Drepper. If some shared library is m ...
, list symbols imported by the object file; similar to
* List of Unix commands
This is a list of Unix commands as specified by IEEE Std 1003.1-2008, which is part of the Single UNIX Specification (SUS). These commands can be found on Unix operating systems and most Unix-like operating systems.
List
See also
* List of ...
*llvm
LLVM is a set of compiler and toolchain technologies that can be used to develop a front end for any programming language and a back end for any instruction set architecture. LLVM is designed around a language-independent intermediate represe ...
provides similar set of tools
* strace, a tool for system call debugging (enabled by kernel functionality) available on many distributions
References
External links
*
The ELF Tool Chain Project
: the BSD license similar project
mirror
{{DEFAULTSORT:Binutils
Programming tools
Free compilers and interpreters
GNU Project software