aboutsummaryrefslogtreecommitdiff
path: root/binutils/objcopy.1
blob: 4ba11646d72d0b94904aa94b145fd5f316b30eef (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
.\" Copyright (c) 1991 Free Software Foundation
.\" See section COPYING for conditions for redistribution
.TH objcopy 1 "June 1993" "cygnus support" "GNU Development Tools"
.de BP
.sp
.ti \-.2i
\(**
..

.SH NAME
objcopy \- copy and translate object files

.SH SYNOPSIS
.hy 0
.na
.TP
.B objcopy
.RB "[\|" \-F\ \fIbfdname\fB\ |\ \-\-target=\fIbfdname\fR "\|]" 
.RB "[\|" \-I\ \fIbfdname\fB\ |\ \-\-input\-target=\fIbfdname\fR "\|]" 
.RB "[\|" \-O\ \fIbfdname\fB\ |\ \-\-output\-target=\fIbfdname\fR "\|]" 
.RB "[\|" \-S\ |\ \-\-strip\-all\fR "\|]" 
.RB "[\|" \-g\ |\ \-\-strip\-debug\fR "\|]" 
.RB "[\|" \-x\ |\ \-\-discard\-all\fR "\|]" 
.RB "[\|" \-X\ |\ \-\-discard\-locals\fR "\|]" 
.RB  "[\|" \-b\ \fIbyte\fP |\ \-\-byte=\fIbyte\fP "\|]" 
.RB  "[\|" \-i\ \fIinterleave\fP |\ \-\-interleave=\fIinterleave\fP "\|]" 
.RB "[\|" \-v\ |\ \-\-verbose\fR "\|]" 
.RB "[\|" \-V\ |\ \-\-version\fR "\|]" 
.RB "[\|" \-\-help\fR "\|]" 
.B infile
.RB "[\|" outfile\fR "\|]" 
.SH DESCRIPTION
The GNU 
.B objcopy
utility copies the contents of an object file to another.  
.B objcopy 
uses the GNU BFD Library to read and write the object files.  It can
write the destination object file in a format different from that of
the source object file.  The exact behavior of 
.B objcopy
is controlled by command-line options.
.PP
.B objcopy
creates temporary files to do its translations and deletes them
afterward.
.B objcopy
uses BFD to do all its translation work; it knows about all the
formats BFD knows about, and thus is able to recognize most formats
without being told explicitly.
.PP
.I infile
and
.I outfile
are the source and output files respectively.  If you do not specify
.IR outfile ,
.B objcopy
creates a temporary file and destructively renames the result with the
name of the input file.

.SH OPTIONS
.TP
.B \-I \fIbfdname\fR, \fB\-\-input\-target=\fIbfdname
Consider the source file's object format to be 
.IR bfdname ,
rather than attempting to deduce it.
.TP
.B \-O \fIbfdname\fR, \fB\-\-output\-target=\fIbfdname
Write the output file using the object format 
.IR bfdname .
.TP
.B \-F \fIbfdname\fR, \fB\-\-target=\fIbfdname
Use 
.I bfdname
as the object format for both the input and the output file; i.e.
simply transfer data from source to destination with no translation.
.TP
.B \-S\fR, \fB\-\-strip\-all
Do not copy relocation and symbol information from the source file.
.TP
.B \-g\fR, \fB\-\-strip\-debug
Do not copy debugging symbols from the source file.
.TP
.B \-x\fR, \fB \-\-discard\-all
Do not copy non-global symbols from the source file.
.TP
.B \-X\fR, \fB\-\-discard\-locals
Do not copy compiler-generated local symbols. (These usually start
with "L" or ".").
.TP
.B \-b \fIbyte\fR, \fB\-\-byte=\fIbyte
Keep only every \fIbyte\fPth byte of the input file (header data is
not affected).  \fIbyte\fP can be in the range from 0 to the
interleave-1.  This option is useful for creating files to program
ROMs.  It is typically used with an srec output target.
.TP
.B \-i \fIinterleave\fR, \fB\-\-interleave=\fIinterleave
Only copy one out of every \fIinterleave\fP bytes.  Which one to copy is
selected by the \fB\-b\fP or \fB\-\-byte\fP option.  The default is 4.
The interleave is ignored if neither \fB\-b\fP nor \fB\-\-byte\fP is given.
.TP
.B \-v\fR, \fB\-\-verbose
Verbose output: list all object files modified.  In the case of
archives, "\fBobjcopy \-V\fR" lists all members of the archive.
.TP
.B \-V\fR, \fB\-\-version
Show the version number of
.B objcopy
and exit.
.TP
.B \-\-help
Show a summary of the options to
.B objcopy
and exit.
.SH "SEE ALSO"
.RB "`\|" binutils "\|'" 
entry in 
.B
info\c
\&; 
.I
The GNU Binary Utilities\c
\&, Roland H. Pesch (June 1993).

.SH COPYING
Copyright (c) 1993 Free Software Foundation, Inc.
.PP
Permission is granted to make and distribute verbatim copies of
this manual provided the copyright notice and this permission notice
are preserved on all copies.
.PP
Permission is granted to copy and distribute modified versions of this
manual under the conditions for verbatim copying, provided that the
entire resulting derived work is distributed under the terms of a
permission notice identical to this one.
.PP
Permission is granted to copy and distribute translations of this
manual into another language, under the above conditions for modified
versions, except that this permission notice may be included in
translations approved by the Free Software Foundation instead of in
the original English.