> For the complete documentation index, see [llms.txt](https://dev2ero.gitbook.io/notes-cs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://dev2ero.gitbook.io/notes-cs/cyber-security/xin-xi-an-quan-yuan-li/binary-security/gong-ju-xiang-er-jin-zhi-an-quan/binutils.md).

# binutils

GNU 软件中重要的一员，是一个包含了若干核心二进制工具的软件包。在部分环境中并没有默认安装（比如当你发现你的 Linux 系统中 readelf 和 objdump 命令不存在），此时就找你的包管理器从软件源中 `install` 一下 `binutils` 包吧。\
The GNU Binutils are a collection of binary tools. The main ones are:

* **ld** - the GNU linker.
* **as** - the GNU assembler.

But they also include:

* **addr2line** - Converts addresses into filenames and line numbers.
* **ar** - A utility for creating, modifying and extracting from archives.
* **c++filt** - Filter to demangle encoded C++ symbols.
* **dlltool** - Creates files for building and using DLLs.
* **gold** - A new, faster, ELF only linker, still in beta test.
* **gprof** - Displays profiling information.
* **nlmconv** - Converts object code into an NLM.
* **nm** - Lists symbols from object files.
* **objcopy** - Copies and translates object files.
* **objdump** - Displays information from object files.
* **ranlib** - Generates an index to the contents of an archive.
* **readelf** - Displays information from any ELF format object file.
* **size** - Lists the section sizes of an object or archive file.
* **strings** - Lists printable strings from files.
* **strip** - Discards symbols.
* **windmc** - A Windows compatible message compiler.
* **windres** - A compiler for Windows resource files.
