GNU Binutils
The GNU Binary Utilities, or binutils, are a set of programming tools for creating and managing binary programs, object files, libraries, profile data, and assembly source code.
Developer(s) | GNU Project |
---|---|
Stable release | 2.41[1]
/ 30 July 2023 |
Repository | |
Type | Programming tools |
License | GNU GPL |
Website | www |
Tools
They were originally written by programmers at Cygnus Solutions.
The GNU Binutils are typically used in conjunction with compilers such as the GNU Compiler Collection (gcc), build tools like make, and the GNU Debugger (gdb).
Through the use of the Binary File Descriptor library (libbfd), most tools support the various object file formats supported by libbfd.
Commands
The binutils include the following commands:
as | assembler popularly known as GAS (GNU Assembler) |
ld | linker |
gprof | profiler |
addr2line | convert address to file and line |
ar | create, modify, and extract from archives |
c++filt | demangling filter for C++ symbols |
dlltool | creation of Windows dynamic-link libraries |
gold | alternative linker for ELF files |
nlmconv | object file conversion to a NetWare Loadable Module |
nm | list symbols exported by object file |
objcopy | copy object files, possibly making changes |
objdump | dump information about object files |
ranlib | generate indices for archives (for compatibility; same as ar -s ) |
readelf | display content of ELF 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 files |
elfutils
Ulrich Drepper wrote elfutils, to partially replace GNU Binutils, purely for Linux and with support only for ELF and DWARF. It distributes three libraries with it for programmatic access.[2][3]
See also
- GNU Core Utilities
- GNU Debugger
- ldd (Unix), list symbols imported by the object file; similar to
nm
- List of Unix commands
- llvm provides similar set of tools
- strace, a tool for system call debugging (enabled by kernel functionality) available on many distributions
References
- Nick Clifton (30 July 2023). "GNU Binutils 2.41 release". Retrieved 30 July 2023.
- elfutils home
- elfutils at Drepper's home
External links
- Official website
- The ELF Tool Chain Project : the BSD license similar project (mirror)