Linux objcopy命令


一、簡介

[功能] 

將目標文件的一部分或者全部內容拷貝到另外一個目標文件中,或者實現目標文件的格式轉換。 

[描述] 

objcopy工具使用BFD庫讀寫目標文件,它可以將一個目標文件的內容拷貝到另外一個目標文件當中。objcopy通過它的選項來控制其不同的動作,它可以將目標文件拷貝成和原來的文件不一樣的格式。需要注意的是objcopy能夠在兩種格式之間拷貝一個完全鏈接的文件,在兩種格式之間拷貝一個可重定位的目標文件可能不會正常地工作。 

objcopy在做轉換的時候會創建臨時文件,然后將這些臨時文件刪除。objcopy使用BFD來做它所有的轉換工作;它訪問BFD中描述的所有格式,可以不必指定就識別大多數的格式。 

通過指定輸出目標為srec(例如 -O srec),objcopy可以用來生成S-record文件。 

通過指定輸入目標為而進制文件(例如-O binary),objcopy可以生成原始格式的二進制文件。當objcopy生成一個原始格式的二進制文件的時候,它會生成輸入的目標文件的基本內存拷貝,然后所有的標號和可重定位信息都會被去掉。內存拷貝開始於最低段的加載地址,拷貝到輸出文件。 

當生成一個S-record或者原始的二進制文件的時候,可以使用-S這個很有用的選項選項來移除一些包含調試信息的節。有時-R可以用來移除一些二進制文件不需要的節。 

 

二、命令格式

objcopy [選項]... 輸入文件 [輸出文件]

選項參見

 

三、使用實例

1)保存調試符號到文件

objcopy --only-keep-debug [被提取的文件] [提取出來的調試符號文件,建議加.debug后綴]

2)添加調試符號到文件

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

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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM