GNU Binutils

阅读数:151 评论数:0

跳转到新版页面

分类

Linux

正文

    GNU Binutils,是GNU Binary Utilities的简写,BinUtils中比较重要的工具是ld和as。

1、ld

    链接器,将多个目标文件,链接成一个可执行文件(或目标文件)

2、as

    汇编器,将汇编源代码编译为机器代码

另外还有一些实用的工具:

3、addr2line

    将地址转换为(文件名和)行号的工具,一般主要用于反汇编。

4、ar

    用来操作(.a)档案文件,比如创建、修改、提取内容等。

5、c++filt

  Filter to demangle encoded C++ symbols

6、dlltool

    creates files for building and using DLLs

7、gold

    一个新的,速度更快件的,只针对ELF的链接器

8、gprof

    Displays profiling information

9、nlmconv

    Converts object code into an NLM

10、nm

      列出目标文件中符号

11、objcopy

    copy并转换文件,可用于不同格式的二进制文件的转换。

12、objdump

    显示目标文件中的信息

13、ranlib

    Generates an index to the contents of an archive

14、readelf

    显示ELF格式的(目标)文件的信息。

15、size

    显示目标文件或(.a)档案文件中的节(section)的大小

16、strings

    显示文件中(可打印)的字符串信息

17、strip

    去除符号。一般用来把可执行文件中的一些信息(比如debug信息)去除掉,以实现在不影响程序功能的前提下,减少可执行文件的大小。

18、windmc

    A windows compatible message compiler

19、windres

    A  compiler for Windows resource files




相关推荐

一、安装内核源码 如果你安装全部的sources,把内核tarball放在你有权限的目录下,解压缩,不要使用/usr/src/linux这个目录,因为这是linux系统使用的目录。 xz -cd li

一、概述 Kernel Address Sanitizer是一个动态内存错误检测工具,它用于发现Linux内核中的内存安全问题。KASAN能够检测到的错误类型包括: 堆栈溢出 全局缓冲区溢出 堆缓冲

一、概述 内核中init_task变量是进程0使用的进程描述符,也是Linux系统中第一个进程描述符。 smp amp bmp 非对称多处理(Asymmetric multiprocessin

1、/etc/passwd 系统用户配置文件,存储了系统中所有用户的基本信息,并且所有用户都可以对此文件执行读操作。 每一行代表一个账号,每一行使用“:”分隔开,共七个字段。 root:x:0:0:r

在 Bash shell 中,type 是一个内置命令,用于显示指定命令的类型。它可以告诉你一个命令是内置的(built-in),还是一个外部的可执行程序,或者是别名(alias)、函数、关键字等。

一、变量的删除与替换 变量设置方式 说明 ${string:position} 从$position开始提取子串 ${string:position:length} 从$position

一、概述 在 Linux 系统中,当用户登录到 Bash shell 时,系统会显示一些欢迎信息或登录消息。这些消息可以来自不同的文件,具体取决于它们是为所有用户显示还是仅为特定用户显示。 二、全局消

一、概述 在Linux系统中,Bash环境配置文件用于设置用户的shell环境。这些文件可以包含别名、函数、环境变量、路径设置等。根据它们的作用范围和加载时机,这些文件可以分为几类: 二、系统级配置文

一、基础知识     从源代码到程序的执行,一般要经历几个过程: 源代码编辑-》编译-》链接-》装载-》执行   二、两种处理器架构 1、冯诺依曼结构     是指程序和数据存储空间并不分开,而是在一

Centos7默认的firefox浏览器没有安装flash 插件。 1、安装adobe yum源 http://get.adobe.com/cn/flashplaye