Ad

OnWorks 网站图标
英语法语德语意大利语葡萄牙语俄语西班牙语

mips64el-linux-gnuabi64-objcopy - 云端在线

在 OnWorks 免费托管服务提供商中通过 Ubuntu Online、Fedora Online、Windows 在线模拟器或 MAC OS 在线模拟器运行 mips64el-linux-gnuabi64-objcopy

这是命令 mips64el-linux-gnuabi64-objcopy 可以使用我们的多个免费在线工作站之一在 OnWorks 免费托管服务提供商中运行,例如 Ubuntu Online、Fedora Online、Windows 在线模拟器或 MAC OS 在线模拟器

程序:

名称


objcopy - 复制和翻译目标文件

概要


对象复制 [-F 名称|--目标=名称]
[-I 名称|--输入目标=名称]
[-O 名称|--输出目标=名称]
[-B bfdarch|--二进制架构=bfdarch]
[-S|--strip-all]
[-g|--strip-调试]
[-K 符号名|--保持符号=符号名]
[-N 符号名|--strip-符号=符号名]
[--strip-unneeded-symbol=符号名]
[-G 符号名|--keep-global-symbol=符号名]
[--localize-隐藏]
[-L 符号名|--localize-符号=符号名]
[--globalize-符号=符号名]
[-W 符号名|--弱化符号=符号名]
[-w|--通配符]
[-x|--丢弃所有]
[-X|--discard-locals]
[-b 字节|--字节=字节]
[-i [宽度]|--交错[=宽度]]
[--交错宽度=宽度]
[-j 剖面图|--仅部分=剖面图]
[-R 剖面图|--删除部分=剖面图]
[-p|--保留日期]
[-D|--启用确定性档案]
[-U|--disable-deterministic-archives]
[- 调试]
[--间隙填充=VAL]
[--pad-to=地址]
[--设置开始=VAL]
[--调整开始=增量]
[--更改地址=增量]
[--change-section-address 剖面图{=,+,-}VAL]
[--change-section-lma 剖面图{=,+,-}VAL]
[--change-section-vma 剖面图{=,+,-}VAL]
[--更改警告[--no-change-warnings]
[--set-section-flags 剖面图=标志]
[--添加部分 部分名称=文件名]
[--转储部分 部分名称=文件名]
[--更新部分 部分名称=文件名]
[--重命名部分 旧名=新名字[,标志]]
[--long-section-names {启用,禁用,保持}]
[--change-lead-char[--删除前导字符]
[--反向字节=NUM]
[--srec-len=IVAL[--srec-forceS3]
[--重新定义符号 =]
[--重新定义符号=文件名]
[- 削弱]
[--保持符号=文件名]
[--strip-symbols=文件名]
[--strip-unneeded-symbols=文件名]
[--keep-global-symbols=文件名]
[--本地化符号=文件名]
[--globalize-symbols=文件名]
[--弱化符号=文件名]
[--添加符号 姓名=[部分:][,标志]
[--alt-机器码=指数]
[--前缀符号=绳子]
[--前缀部分=绳子]
[--prefix-alloc-sections=绳子]
[--add-gnu-debuglink=文件路径]
[--keep-file-symbols]
[--only-keep-调试]
[--strip-dwo]
[--extract-dwo]
[--提取符号]
[--可写文本]
[--只读文本]
[- 纯的]
[--不纯]
[--文件对齐=NUM]
[--堆=尺寸]
[--image-base=地址]
[--节对齐=NUM]
[--stack=尺寸]
[--子系统=:主要.未成年人]
[--compress-debug-sections]
[--decompress-debug-sections]
[--矮人深度=n]
[--矮人开始=n]
[-v|--详细]
[-V|- 版]
[ - 帮帮我[- 信息]
入档 [输出文件]

商品描述


GNU 对象复制 实用程序将一个目标文件的内容复制到另一个。 对象复制 使用
GNU BFD 库来读取和写入目标文件。 它可以写目的地
目标文件的格式与源目标文件的格式不同。 确切的行为
of 对象复制 由命令行选项控制。 注意 对象复制 应该能够
在任何两种格式之间复制完全链接的文件。 但是,复制可重定位对象
任何两种格式之间的文件可能无法按预期工作。

对象复制 创建临时文件以进行翻译,然后将其删除。
对象复制 使用 BFD 完成所有翻译工作; 它可以访问所有格式
在 BFD 中描述,因此无需明确告知即可识别大多数格式。

对象复制 可用于通过使用输出目标生成 S 记录 记录 (例如,使用 -O
记录).

对象复制 可用于通过使用输出目标生成原始二进制文件 二进制
(例如,使用 -O 二进制)。 什么时候 对象复制 生成一个原始的二进制文件,它本质上将
生成输入目标文件内容的内存转储。 所有符号和
重定位信息将被丢弃。 内存转储将从加载地址开始
复制到输出文件中的最低部分。

在生成 S 记录或原始二进制文件时,使用 -S 去除
包含调试信息的部分。 在某些情况下 -R 将有助于删除
包含二进制文件不需要的信息的部分。

笔记 - -对象复制 无法更改其输入文件的字节序。 如果输入
格式具有字节序(某些格式没有), 对象复制 只能将输入复制到文件中
具有相同字节序或没有字节序的格式(例如, 记录)。 (然而,
看到 --反向字节 选项。)

配置


入档
输出文件
分别是输入文件和输出文件。 如果不指定 输出文件, 对象复制
创建一个临时文件并破坏性地将结果重命名为 入档.

-I 名称
--输入目标=名称
考虑源文件的对象格式为 名称, 而不是试图
推断出来。

-O 名称
--输出目标=名称
使用对象格式写入输出文件 名称.

-F 名称
--目标=名称
使用方法 名称 作为输入和输出文件的对象格式; 即,简单地
无需翻译即可将数据从源传输到目标。

-B bfdarch
--二进制架构=bfdarch
在将无体系结构的输入文件转换为目标文件时很有用。 在这
如果输出架构可以设置为 bfdarch. 如果出现以下情况,将忽略此选项
输入文件有一个已知的 bfdarch. 您可以在程序中访问此二进制数据
通过引用由转换过程创建的特殊符号。 这些
符号被称为_binary_目标文件_开始,_二进制_目标文件_结束和
_二进制_目标文件_尺寸。 例如,您可以将图片文件转换为目标文件,然后
然后使用这些符号在您的代码中访问它。

-j 剖面图
--仅部分=剖面图
仅将指定部分从输入文件复制到输出文件。 这个选项
可以多次给予。 请注意,不恰当地使用此选项可能会使
输出文件不可用。 接受通配符 剖面图.

-R 剖面图
--删除部分=剖面图
删除任何匹配的部分 剖面图 从输出文件。 这个选项可能是
给予不止一次。 请注意,不恰当地使用此选项可能会使输出
文件无法使用。 接受通配符 剖面图. 使用两者 -j
-R 选项一起导致未定义的行为。

-S
--strip-all
不要从源文件复制重定位和符号信息。

-g
--strip-调试
不要从源文件中复制调试符号或部分。

--strip-不需要的
去除重定位处理不需要的所有符号。

-K 符号名
--保持符号=符号名
剥离符号时,保留符号 符号名 即使它通常会被剥离。
可以多次给出此选项。

-N 符号名
--strip-符号=符号名
不要复制符号 符号名 从源文件。 这个选项可能会被给予更多
不止一次。

--strip-unneeded-symbol=符号名
不要复制符号 符号名 从源文件,除非它是一个需要
搬迁。 可以多次给出此选项。

-G 符号名
--keep-global-symbol=符号名
只保留符号 符号名 全球的。 将所有其他符号设为文件的本地符号,以便
它们在外部是不可见的。 可以多次给出此选项。

--localize-隐藏
在 ELF 对象中,将所有具有隐藏或内部可见性的符号标记为本地。
此选项适用于特定于符号的本地化选项,例如 -L.

-L 符号名
--localize-符号=符号名
制作符号 符号名 本地文件,因此它在外部不可见。 这个
选项可以多次给出。

-W 符号名
--弱化符号=符号名
制作符号 符号名 虚弱的。 可以多次给出此选项。

--globalize-符号=符号名
给符号 符号名 全局范围,以便它在文件外部可见
它被定义。 可以多次给出此选项。

-w
--通配符
允许正则表达式 符号名s 用于其他命令行选项。 这
问号 (?)、星号 (*)、反斜杠 (\) 和方括号 ([]) 运算符可以
在符号名称的任何地方使用。 如果符号名称的第一个字符是
感叹号 (!) 则该符号的开关意义相反。 为了
例:

-w -W !foo -W fo*

会导致 objcopy 削弱所有以“fo”开头的符号,除了符号
“富”。

-x
--丢弃所有
不要从源文件中复制非全局符号。

-X
--discard-locals
不要复制编译器生成的局部符号。 (这些通常以 L or ..)

-b 字节
--字节=字节
如果已通过 --交错 选项然后开始范围
要保留的字节 字节第 XNUMX 个字节。 字节 可以在 0 到 宽度-1,哪里
宽度 是由给出的值 --交错 选项。

-i [宽度]
--交错[=宽度]
只复制一个范围 宽度 字节。 (标题数据不受影响)。 选择
范围中的哪个字节开始复制 - 字节 选项。 选择宽度
范围与 --交错宽度 选项。

此选项对于创建文件来编程 ROM 很有用。 它通常与
“srec”输出目标。 注意 对象复制 如果您不指定
- 字节 选项。

默认交错宽度为 4,因此 - 字节 设置为 0, 对象复制 会复制
从输入到输出的每四个字节中的第一个字节。

--交错宽度=宽度
当与 --交错 选项,复制 宽度 一次字节。 的开始
要复制的字节范围由 - 字节 选项,以及范围的范围
设置为 --交错 选项。

此选项的默认值为 1。 宽度 加上 字节 值由
练习 - 字节 选项不得超过由 --交错
选项。

此选项可用于为两个交错的 16 位闪存创建映像
32位总线路过 -b 0 -i 4 --交错宽度=2-b 2 -i 4
--交错宽度=2对象复制 命令。 如果输入是“12345678”,那么
输出将分别为“1256”和“3478”。

-p
--保留日期
将输出文件的访问和修改日期设置为与
输入文件。

-D
--启用确定性档案
操作地点 确定性 模式。 复制归档成员和写入归档时
索引,对 UID、GID、时间戳使用零,并对所有使用一致的文件模式
文件。

If Binutils 配置了 --启用确定性档案,那么这个模式就开启了
默认情况下。 它可以被禁用 -U 选项,如下。

-U
--disable-deterministic-archives
Do 没有 在操作 确定性 模式。 这是相反的 -D 选项,上面:
复制归档成员和写入归档索引时,使用它们的实际 UID、GID、
时间戳和文件模式值。

这是默认设置,除非 Binutils 配置了
--启用确定性档案.

- 调试
如果可能,转换调试信息。 这不是默认值,因为只有
支持某些调试格式,转换过程可以是时间
消耗。

- 填补空白 VAL
填充部分之间的间隙 VAL. 此操作适用于 加载 地址 (LMA)
的部分。 它是通过增加较低的部分的大小来完成的
地址,并填写创建的额外空间 VAL.

--pad-to 地址
将输出文件填充到加载地址 地址. 这是通过增加
最后一部分的大小。 额外的空间用指定的值填充
- 填补空白 (默认为零)。

--设置开始 VAL
将新文件的起始地址设置为 VAL. 并非所有目标文件格式都支持
设置起始地址。

--更改开始 增量
--调整开始 增量
通过添加更改起始地址 增量. 并非所有目标文件格式都支持设置
起始地址。

--更改地址 增量
--调整-vma 增量
更改所有段的 VMA 和 LMA 地址,以及起始地址,通过
添加 增量. 某些目标文件格式不允许更改段地址
随意。 请注意,这不会重新定位部分; 如果程序期望
将在某个地址加载的部分,此选项用于更改
部分加载到不同的地址,程序可能会失败。

--change-section-address 剖面图{=,+,-}VAL
--调整部分-vma 剖面图{=,+,-}VAL
设置或更改任何匹配段的 VMA 地址和 LMA 地址
剖面图。 如果 = 使用,段地址设置为 VAL。 除此以外, VAL is
添加到节地址或从节地址中减去。 请参阅下面的评论
--更改地址, 以上。 如果 剖面图 与输入中的任何部分都不匹配
文件,将发出警告,除非 --no-change-warnings 用来。

--change-section-lma 剖面图{=,+,-}VAL
设置或更改任何匹配的部分的 LMA 地址 剖面图. LMA
address 是程序加载时该段将加载到内存中的地址
时间。 通常这与 VMA 地址相同,VMA 地址是
程序运行时的部分,但在某些系统上,尤其是那些程序
保存在 ROM 中,两者可以不同。 如果 = 使用,段地址设置为
VAL。 除此以外, VAL 添加到节地址或从节地址中减去。 见
评论下 --更改地址, 以上。 如果 剖面图 不匹配任何
输入文件中的部分,将发出警告,除非 --no-change-warnings is
用过的。

--change-section-vma 剖面图{=,+,-}VAL
设置或更改任何匹配段的 VMA 地址 剖面图. VMA地址
是程序启动后该部分所在的地址
执行。 通常这与 LMA 地址相同,LMA 地址是
该部分将被加载到内存中,但在某些系统上,尤其是那些
程序保存在ROM中,两者可以不同。 如果 = 使用,段地址
被设置为 VAL。 除此以外, VAL 添加到节地址或从节地址中减去。
请参阅下面的评论 --更改地址, 以上。 如果 剖面图 不匹配
输入文件中的任何部分,都会发出警告,除非 --no-change-warnings
用来。

--更改警告
--调整警告
If --change-section-address or --change-section-lma or --change-section-vma 用来,
并且节模式与任何节都不匹配,发出警告。 这是
默认。

--no-change-warnings
--无调整警告
不发出警告,如果 --change-section-address or --adjust-section-lma or
--调整部分-vma 使用,即使节模式不匹配任何节。

--set-section-flags 剖面图=标志
为任何匹配的部分设置标志 剖面图。 该 标志 参数是逗号
分隔的标志名称字符串。 公认的名字是 分配, 内容, 加载,
空载, 只读, , data, ROM, 分享调试。 您可以设置 内容
对于没有内容但清除没有意义的部分
内容 包含内容的部分的标志——只需删除该部分即可。
并非所有标志对所有目标文件格式都有意义。

--添加部分 部分名称=文件名
添加一个名为的新部分 部分名称 在复制文件时。 新的内容
部分取自文件 文件名. 该部分的大小将是
文件。 此选项仅适用于可以支持部分的文件格式
任意名称。 注意 - 可能需要使用 --set-section-flags 选项
设置新创建部分的属性。

--转储部分 部分名称=文件名
放置名为的部分的内容 部分名称 进入文件 文件名, 覆盖
以前可能存在的任何内容。 此选项与
--添加部分. 此选项类似于 --仅部分 选项,除了它
不创建格式化文件,它只是将内容转储为原始二进制数据,
无需应用任何重定位。 可以多次指定该选项。

--更新部分 部分名称=文件名
替换名为的部分的现有内容 部分名称 与文件的内容
文件名. 该部分的大小将调整为文件的大小。 这
部分标志 部分名称 将保持不变。 对于 ELF 格式文件,该部分要
段映射也将保持不变,这是不可能使用的
--删除部分 其次是 --添加部分. 该选项可以指定超过
一旦。

注意 - 可以使用 --重命名部分--更新部分 更新和
从一个命令行重命名一个部分。 在这种情况下,传递原始部分名称
--更新部分, 以及原来的和新的部分名称 --重命名部分.

--添加符号 姓名=[部分:][,标志]
添加一个名为的新符号 姓名 在复制文件时。 可以指定此选项
多次。 如果 部分 给出,符号将与和
相对于该部分,否则它将是一个 ABS 符号。 指定一个未定义的
部分将导致致命错误。 没有检查该值,它将是
按规定服用。 可以指定符号标志,但并非所有标志都将被指定
对所有目标文件格式都有意义。 默认情况下,符号将是全局的。 这
特殊标志 'before=其他符号' 将在指定的前面插入新符号
其他符号, 否则将在符号表的末尾添加符号
他们出现的顺序。

--重命名部分 旧名=新名字[,标志]
重命名一个部分 旧名新名字, 可选择将节的标志更改为
标志 正在进行中。 这比使用链接描述文件更有优势。
重命名,因为输出保留为目标文件,而不是链接
可执行文件。

当输入格式为二进制时,此选项特别有用,因为这将
始终创建一个名为 .data 的部分。 例如,如果您想创建一个
名为 .rodata 的部分包含二进制数据,您可以使用以下命令行
实现它:

objcopy -I 二进制 -O -B \
--rename-section .data=.rodata,alloc,load,readonly,data,contents \


--long-section-names {启用,禁用,保持}
控制处理“COFF”和“PE-COFF”时对长段名称的处理
对象格式。 默认行为, 保持, 是保留长节名称(如果有)
存在于输入文件中。 这 enable关闭 选项强制启用或
禁止在输出对象中使用长段名称; 什么时候 关闭 实际上,
输入对象中的任何长段名称都将被截断。 这 enable 选项将
如果输入中存在长节名称,则仅发出长节名称; 这几乎是一样的
as 保持,但未定义是否 enable 选项可能会强制创建
输出文件中的空字符串表。

--change-lead-char
某些目标文件格式在符号的开头使用特殊字符。 最多
常见的此类字符是下划线,编译器通常会在每个符号之前添加下划线。
这个选项告诉 对象复制 改变每个符号的前导字符
在目标文件格式之间进行转换。 如果目标文件格式使用相同的前导
字符,此选项无效。 否则,它将添加一个字符,或删除一个
字符,或根据需要更改字符。

--删除前导字符
如果全局符号的第一个字符是使用的特殊符号前导字符
按目标文件格式,去掉字符。 最常见的符号引导
字符是下划线。 此选项将从所有全局中删除前导下划线
符号。 如果您想将不同文件的对象链接在一起,这会很有用
具有不同符号名称约定的格式。 这不同于
--change-lead-char 因为它总是在适当的时候改变符号名称,
无论输出文件的目标文件格式如何。

--反向字节=NUM
使用输出内容反转节中的字节。 一段长度必须均匀
可以被给定的值整除,以便交换能够发生。 倒车
在执行交错之前发生。

此选项通常用于为有问题的目标系统生成 ROM 映像。
例如,在某些目标板上,从 32 位 ROM 中提取的 8 位字被重新
无论 CPU 字节顺序如何,都以 little-endian 字节顺序组装。 根据
编程模型,ROM 的字节序可能需要修改。

考虑一个包含以下八个字节的部分的简单文件:12345678。

运用 --reverse-bytes=2 对于上面的例子,输出文件中的字节将是
订购了 21436587。

运用 --reverse-bytes=4 对于上面的例子,输出文件中的字节将是
订购了 43218765。

通过使用 --reverse-bytes=2 对于上面的例子,后面跟着 --reverse-bytes=4
输出文件,第二个输出文件中的字节顺序为 34127856。

--srec-len=IVAL
仅对 srec 输出有意义。 设置 Srecords 的最大长度为
生产到 IVAL. 此长度涵盖地址、数据和 crc 字段。

--srec-forceS3
仅对 srec 输出有意义。 避免生成 S1/S2 记录,只创建 S3
记录格式。

--重新定义符号 =
更改符号的名称 , 至 . 这在尝试链接时很有用
没有来源的两件事放在一起,并且存在名称冲突。

--重新定义符号=文件名
申请 --重新定义符号 到每个符号对“ " 在文件中列出 文件名.
文件名 只是一个平面文件,每行一个符号对。 行注释可能是
由哈希字符引入。 可以多次给出此选项。

- 削弱
将文件中的所有全局符号更改为弱。 这在构建一个
对象将使用 -R 链接器的选项。
此选项仅在使用支持弱的目标文件格式时有效
符号。

--保持符号=文件名
申请 --保持符号 文件中列出的每个符号的选项 文件名. 文件名 is
只是一个平面文件,每行一个符号名称。 行注释可能由
哈希字符。 可以多次给出此选项。

--strip-symbols=文件名
申请 --strip-符号 文件中列出的每个符号的选项 文件名. 文件名 is
只是一个平面文件,每行一个符号名称。 行注释可能由
哈希字符。 可以多次给出此选项。

--strip-unneeded-symbols=文件名
申请 --strip-不需要的符号 文件中列出的每个符号的选项 文件名.
文件名 只是一个平面文件,每行有一个符号名称。 行注释可能是
由哈希字符引入。 可以多次给出此选项。

--keep-global-symbols=文件名
申请 --keep-global-symbol 文件中列出的每个符号的选项 文件名.
文件名 只是一个平面文件,每行有一个符号名称。 行注释可能是
由哈希字符引入。 可以多次给出此选项。

--本地化符号=文件名
申请 --localize-符号 文件中列出的每个符号的选项 文件名. 文件名
只是一个平面文件,每行有一个符号名称。 可能会引入行注释
通过哈希字符。 可以多次给出此选项。

--globalize-symbols=文件名
申请 --globalize-符号 文件中列出的每个符号的选项 文件名. 文件名
只是一个平面文件,每行有一个符号名称。 可能会引入行注释
通过哈希字符。 可以多次给出此选项。

--弱化符号=文件名
申请 --weak-symbol 文件中列出的每个符号的选项 文件名. 文件名 is
只是一个平面文件,每行一个符号名称。 行注释可能由
哈希字符。 可以多次给出此选项。

--alt-机器码=指数
如果输出架构有备用机器代码,请使用 指数代替代码
默认的。 这在机器被分配了官方代码的情况下很有用,并且
工具链采用新代码,但其他应用程序仍然依赖于
正在使用的原始代码。 对于基于 ELF 的架构,如果 指数 替代方案
不存在,则该值被视为要存储在
ELF 报头的 e_machine 字段。

--可写文本
将输出文本标记为可写。 此选项对所有目标文件都没有意义
格式。

--只读文本
使输出文本写保护。 此选项对所有对象都没有意义
文件格式。

- 纯的
将输出文件标记为按需分页。 此选项对所有对象都没有意义
文件格式。

--不纯
将输出文件标记为不纯。 此选项对所有目标文件都没有意义
格式。

--前缀符号=绳子
在输出文件中为所有符号添加前缀 绳子.

--前缀部分=绳子
将输出文件中的所有部分名称加上前缀 绳子.

--prefix-alloc-sections=绳子
将输出文件中所有已分配部分的所有名称作为前缀 绳子.

--add-gnu-debuglink=文件路径
创建一个 .gnu_debuglink 部分,其中包含对 文件路径 并添加
它到输出文件。 注意:文件在 文件路径 必须存在。 的一部分
添加 .gnu_debuglink 部分的过程涉及嵌入
调试信息文件的内容到部分中。

如果调试信息文件是在一个位置构建的,但它将安装在
稍后进入不同的位置,然后不要使用安装路径
地点。 这 --add-gnu-debuglink 选项将失败,因为安装的文件
还不存在。 而是将调试信息文件放在当前目录中并使用
--add-gnu-debuglink 没有任何目录组件的选项,如下所示:

objcopy --add-gnu-debuglink=foo.debug

在调试时,调试器将尝试在
一组已知位置。 这些位置的确切集合取决于
正在使用的分发,但它通常包括:

“* 与可执行文件相同的目录。”
"* 包含可执行文件的目录的子目录"
称为 .debug

“* 全局调试目录,例如 /usr/lib/debug。”

只要之前已将调试信息文件安装到这些位置之一
调试器运行一切正常。

--keep-file-symbols
剥离文件时,可能与 --strip-调试 or --strip-不需要的, 保留任何
指定源文件名的符号,否则会被剥离。

--only-keep-调试
剥离文件,删除不会被剥离的任何部分的内容
--strip-调试 并保持调试部分完好无损。 在 ELF 文件中,这会保留
输出中的所有音符部分。

注意 - 剥离部分的部分标题被保留,包括它们的
大小,但该部分的内容将被丢弃。 部分标题是
保留以便其他工具可以将 debuginfo 文件与真实的
可执行文件,即使该可执行文件已被重定位到不同的地址空间。

目的是将此选项与 --add-gnu-debuglink
创建一个两部分的可执行文件。 一个剥离的二进制文件,将占用更少的空间
在 RAM 和发行版中,第二个是调试信息文件,它只是
如果需要调试能力,则需要。 创建这些的建议程序
文件如下:

1.
“foo”然后...

1.
创建一个包含调试信息的文件。

1.
剥离的可执行文件。

1.
将调试信息的链接添加到剥离的可执行文件中。

注意---选择“.dbg”作为调试信息文件的扩展名是任意的。
“--only-keep-debug”步骤也是可选的。 你可以这样做:

1.
1.
1.
1.

即,指向的文件 --add-gnu-debuglink 可以是完整的可执行文件。 它
不必是由 --only-keep-调试 开关。

注意---此开关仅用于完全链接的文件。 它不会使
在调试信息可能不完整的目标文件上使用它是有意义的。
除了 gnu_debuglink 功能目前只支持一个文件名的存在
包含调试信息,而不是每个对象文件上的多个文件名
基础。

--strip-dwo
删除所有 DWARF .dwo 部分的内容,剩下的调试
部分和所有符号完好无损。 此选项旨在供编译器用作
的一部分。 -gsplit-矮人 选项,它在 .o 文件之间拆分调试信息
和一个单独的 .dwo 文件。 编译器以相同的方式生成所有调试信息
文件,然后使用 --extract-dwo 将 .dwo 部分复制到 .dwo 文件的选项,
那么 --strip-dwo 从原始 .o 文件中删除这些部分的选项。

--extract-dwo
提取所有 DWARF .dwo 部分的内容。 见 --strip-dwo 选择更多
信息。

--文件对齐 NUM
指定文件对齐方式。 文件中的部分将始终以文件偏移量开始
这是这个数字的倍数。 这个默认为 512。 [这个选项是特定的
到 PE 目标。]

- 堆 储备
- 堆 储备,承诺
指定要保留(和可选地提交)用作的内存字节数
这个程序的堆。 [此选项特定于 PE 目标。]

--图像库
使用方法 作为您的程序或 dll 的基址。 这是最低的内存
加载程序或 dll 时将使用的位置。 为了减少需要
重新定位并提高 dll 的性能,每个都应该有一个唯一的基地址
并且不与任何其他 dll 重叠。 可执行文件的默认值为 0x400000,并且
0x10000000 用于 dll。 [此选项特定于 PE 目标。]

--section-alignment NUM
设置截面对齐。 内存中的部分总是从以下地址开始
是这个数字的倍数。 默认为 0x1000。 [此选项特定于 PE
目标。]

- 堆 储备
- 堆 储备,承诺
指定要保留(和可选地提交)用作的内存字节数
这个程序的堆栈。 [此选项特定于 PE 目标。]

--子系统
--子系统 :主要
--子系统 :主要.未成年人
指定您的程序将在哪个子系统下执行。 的法律价值
是“本机”、“窗口”、“控制台”、“posix”、“efi-app”、“efi-bsd”、“efi-rtd”、
“sal-rtd”和“xbox”。 您也可以选择设置子系统版本。 数字
值也被接受 . [此选项特定于 PE 目标。]

--提取符号
保留文件的节标志和符号,但删除所有节数据。 具体来说,
选项:

*
*
*

此选项用于构建一个 .sym VxWorks 内核文件。 它也可以是一个
减小尺寸的有用方法 --只是符号 链接器输入文件。

--compress-debug-sections
使用 zlib 和来自 ELF ABI 的 SHF_COMPRESSED 压缩 DWARF 调试部分。 笔记 -
如果压缩实际上会形成一个部分 ,那么它就不会被压缩。

--compress-debug-sections=none
--compress-debug-sections=zlib
--compress-debug-sections=zlib-gnu
--compress-debug-sections=zlib-gabi
对于 ELF 文件,这些选项控制 DWARF 调试部分的压缩方式。
--compress-debug-sections=none 相当于 --decompress-debug-sections.
--compress-debug-sections=zlib--compress-debug-sections=zlib-gabi 是等价的
--compress-debug-sections. --compress-debug-sections=zlib-gnu 压缩矮人
使用 zlib 调试部分。 调试部分被重命名为 .zdebug
而不是 .调试. 注意 - 如果压缩实际上会形成一个部分 , 然后
它既没有压缩也没有重命名。

--decompress-debug-sections
使用 zlib 解压缩 DWARF 调试部分。 的原始部分名称
压缩的部分被恢复。

-V
- 版
显示版本号 对象复制.

-v
--详细
详细输出:列出所有修改的目标文件。 在档案的情况下, 对象复制 -V
列出档案的所有成员。

- 帮帮我
显示选项的摘要 对象复制.

- 信息
显示一个列表,显示所有可用的架构和对象格式。

@文件
从中读取命令行选项 文件. 读取的选项被插入代替
原来的 @文件 选项。 如果 文件 不存在或无法读取,则该选项
将按字面处理,而不是删除。

中的选项 文件 由空格分隔。 可以包含空格字符
通过用单引号或双引号将整个选项括在一个选项中。 任何
字符(包括反斜杠)可以通过在字符前加上前缀来包含
包含反斜杠。 这 文件 可能本身包含额外的@文件 选项; 任何
这些选项将被递归处理。

使用 onworks.net 服务在线使用 mips64el-linux-gnuabi64-objcopy


Ad


Ad

最新的 Linux 和 Windows 在线程序