Linux objcopy命令

摘要:
Objcopy通过其选项控制其不同的操作。它可以将目标文件复制为与原始文件不同的格式。注意,objcopy可以在两种格式之间复制完全链接的文件。在两种格式之间复制可重定位目标文件可能无法正常工作。Objcopy将在转换期间创建临时文件,然后删除这些临时文件。Objcopy使用BFD完成所有转换工作;它访问BFD中描述的所有格式,可以识别大多数格式,而无需指定它们。

一、简介

[功能] 

将目标文件的一部分或者全部内容拷贝到另外一个目标文件中,或者实现目标文件的格式转换。 

[描述] 

objcopy工具使用BFD库读写目标文件,它可以将一个目标文件的内容拷贝到另外一个目标文件当中。objcopy通过它的选项来控制其不同的动作,它可以将目标文件拷贝成和原来的文件不一样的格式。需要注意的是objcopy能够在两种格式之间拷贝一个完全链接的文件,在两种格式之间拷贝一个可重定位的目标文件可能不会正常地工作。 

objcopy在做转换的时候会创建临时文件,然后将这些临时文件删除。objcopy使用BFD来做它所有的转换工作;它访问BFD中描述的所有格式,可以不必指定就识别大多数的格式。 

通过指定输出目标为srec(例如 -O srec),objcopy可以用来生成S-record文件。 

通过指定输入目标为而进制文件(例如-O binary),objcopy可以生成原始格式的二进制文件。当objcopy生成一个原始格式的二进制文件的时候,它会生成输入的目标文件的基本内存拷贝,然后所有的标号和可重定位信息都会被去掉。内存拷贝开始于最低段的加载地址,拷贝到输出文件。 

当生成一个S-record或者原始的二进制文件的时候,可以使用-S这个很有用的选项选项来移除一些包含调试信息的节。有时-R可以用来移除一些二进制文件不需要的节。 

 

二、命令格式

objcopy [选项]... 输入文件 [输出文件]

选项参见

http://blog.chinaunix.net/uid-9525959-id-2001841.html
http://www.cnblogs.com/openix/archive/2012/04/08/2437384.html

 

三、使用实例

1)保存调试符号到文件

objcopy --only-keep-debug [被提取的文件] [提取出来的调试符号文件,建议加.debug后缀]

2)添加调试符号到文件

objcopy --add-gnu-debuglink=[debug文件] [需要添加debug信息的文件]

http://blog.chinaunix.net/uid-9525959-id-2001841.html

免责声明:文章转载自《Linux objcopy命令》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇ElementUI中的el-table怎样实现每一列显示的是控件并能动态实现双向数据绑定环境配置——tornado项目准备工作下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

svn clean up命令的使用

以下内容来自网友: https://blog.csdn.net/reggergdsg/article/details/77678771 SVN的清理命令,我们经常会使用。这个命令的原理,我们还是有必要深究一下的。当SVN改变你的工作拷贝(或是.svn中的任何信息),它会尽可能的小心。在进行任何修改操作时,SVN都会把日志记录到日志文件中,然后执行log文件...

ANSI、ASCII、Unicode和UTF-8编码

来自:http://blog.163.com/yang_jianli/blog/static/161990006201371451851274/ -------------------------------------------------------------------------------------------- 1、ANSI编码     ...

MySQL 主从复制:基于二进制文件复制配置详解

MySQL-主从复制:基于二进制文件复制详解 前言 主从复制是指把一个MySQL的数据库服务器作为主服务器(master),然后把master的数据复制到一个或者多个MySQL数据库服务器作为从服务器(slave)。从master到slave的复制一般是异步复制,所以从服务器的复制可以随时停止,也不会影响到主服务器的使用。可以通过配置来决定只复制哪些数据库...

python模块介绍- binascii:二进制和ASCII互转以及其他进制转换

20.1 binascii:二进制和ASCII互转作用:二进制和ASCII互相转换。 Python版本:1.5及以后版本 binascii模块包含很多在二进制和ASCII编码的二进制表示转换的方法。通常情况不会直接使用这些功能,而是使用像UU,base64编码,或BinHex封装模块。 binascii模块包含更高级别的模块使用的,用C语言编写的低级高效功...

图片转二进制的两种方式

1 //对图片要求不高的时候建议用jpg,要求比较高的时候用png 2 3 //方式一: 4 //let imageData = UIImagePNGRepresentation(image)! 5 6 //方式二: 7 //参数2(comp...

iOS 架构-App组件化开发

前因 其实我们这个7人iOS开发团队并不适合组件化开发。原因是因为性价比低,需要花很多时间和经历去做这件事,带来的收益并不能彻底改变什么。但是因为有2~3个星期的空档期,并不是很忙;另外是可以用在一个全新的App上。所以决定想尝试下组件化开发。 所谓尝试也就是说:去尝试解决组件化开发当中的一些问题。如果能解决,并且有比较好的解决方案,那就继续下去,否则就...