File: objcopy.1

package info (click to toggle)
manpages-ja 0.5.0.0.20120606-1
  • links: PTS
  • area: main
  • in suites: wheezy
  • size: 25,964 kB
  • sloc: perl: 161; makefile: 116
file content (304 lines) | stat: -rw-r--r-- 14,359 bytes parent folder | download | duplicates (6)
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
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
.\" Copyright (c) 1991, 93, 94, 95, 96, 1997 Free Software Foundation
.\" See section COPYING for conditions for redistribution
.\"
.\" Japanese Version Copyright (c) 1997-2000 NAKANO Takeo all rights reserved.
.\" Translated Mon Jan 5 1998 by NAKANO Takeo <nakano@@apm.seikei.ac.jp>
.\" Updated Fri 27 Oct 2000 by NAKANO Takeo
.\"
.TH objcopy 1 "October 1994" "cygnus support" "GNU Development Tools"
.de BP
.sp
.ti \-.2i
\(**
..

.SH 名前
objcopy \- オブジェクトファイルのコピーや変換を行う

.SH 書式
.hy 0
.na
.TP
.B objcopy
.RB "[\|" \-F\ \fIbfdname\fR\ |\ \fB\-\-target=\fIbfdname\fR "\|]" 
.RB "[\|" \-I\ \fIbfdname\fR\ |\ \fB\-\-input\-target=\fIbfdname\fR "\|]" 
.RB "[\|" \-O\ \fIbfdname\fR\ |\ \fB\-\-output\-target=\fIbfdname\fR "\|]" 
.RB "[\|" \-R\ \fIsectionname\fR\ |\ \fB\-\-remove\-section=\fIsectionname\fR "\|]"
.RB "[\|" \-S\fR\ |\ \fB\-\-strip\-all\fR "\|]" 
.RB "[\|" \-g\fR\ |\ \fB\-\-strip\-debug\fR "\|]" 
.RB "[\|" \-\-strip\-unneeded\fR "\|]" 
.RB "[\|" \-K\ \fIsymbolname\fR\ |\ \fB\-\-keep\-symbol=\fIsymbolname\fR "\|]" 
.RB "[\|" \-N\ \fIsymbolname\fR\ |\ \fB\-\-strip\-symbol=\fIsymbolname\fR "\|]" 
.RB "[\|" \-L\ \fIsymbolname\fR\ |\ \fB\-\-localize\-symbol=\fIsymbolname\fR "\|]"
.RB "[\|" \-W\ \fIsymbolname\fR\ |\ \fB\-\-weaken\-symbol=\fIsymbolname\fR "\|]"
.RB "[\|" \-x\fR\ |\ \fB\-\-discard\-all\fR "\|]" 
.RB "[\|" \-X\fR\ |\ \fB\-\-discard\-locals\fR "\|]" 
.RB "[\|" \-b\ \fIbyte\fR\ |\ \fB\-\-byte=\fIbyte\fR "\|]" 
.RB "[\|" \-i\ \fIinterleave\fR\ |\ \fB\-\-interleave=\fIinterleave\fR "\|]" 
.RB "[\|" \-p\fR\ |\ \fB\-\-preserve\-dates\fR "\|]" 
.RB "[\|" \-\-debugging "\|]"
.RB "[\|" \-\-gap\-fill=\fIval\fR "\|]"
.RB "[\|" \-\-pad\-to=\fIaddress\fR "\|]"
.RB "[\|" \-\-set\-start=\fIval\fR "\|]"
.RB "[\|" \-\-adjust\-start=\fIincr\fR "\|]"
.RB "[\|" \-\-adjust\-vma=\fIincr\fR "\|]"
.RB "[\|" \-\-adjust\-section\-vma=\fIsection{=,+,-}val\fR "\|]"
.RB "[\|" \-\-adjust\-warnings\fR "\|]"
.RB "[\|" \-\-no\-adjust\-warnings\fR "\|]"
.RB "[\|" \-\-set\-section\-flags=\fIsection=flags\fR "\|]"
.RB "[\|" \-\-add\-section=\fIsectionname=filename\fR "\|]"
.RB "[\|" \-\-change\-leading\-char\fR "\|]"
.RB "[\|" \-\-remove\-leading\-char\fR "\|]"
.RB "[\|" \-\-weaken\fR "\|]"
.RB "[\|" \-v\ |\ \-\-verbose\fR "\|]" 
.RB "[\|" \-V\ |\ \-\-version\fR "\|]" 
.RB "[\|" \-\-help\fR "\|]" 
.B infile
.RB "[\|" outfile\fR "\|]" 
.SH 説明
GNU
.B objcopy
ユーティリティはオブジェクトファイルの内容を別ファイルにコピーする。
.B objcopy
はオブジェクトファイルの読み書きに GNU BFD ライブラリを用いる。これに
よって書き込み先のファイルのオブジェクトフォーマットを読み込みファイル
のフォーマットから変更することができる。
.B objcopy
の詳細な動作はコマンドラインオプションによって決定される。
.PP
.B objcopy
は変換を行う際に一時ファイルを作成し、動作後にこれを消去する。
.B objcopy
変換作業はすべて BFD によって行われる。したがって BFD が種々のフォー
マットに関して持っているすべての情報を利用することができ、明示しないで
もほとんどのフォーマットを認識できる。
.PP
.B objcopy
はターゲットを
.B srec
に指定する (つまり
.B -O srec
とする) ことによって S-record を生成することもできる。
.PP
.B objcopy
は出力ターゲットを
.B binary
に指定する (つまり
.B -O binary
とする) ことによって raw バイナリファイルを生成することもできる。この
際には、基本的には入力オブジェクトファイルの内容のメモリダンプが作られ
る。メモリダンプは出力ファイルにコピーされる最抵位のセクションの仮想ア
ドレスからスタートする。
.PP
S-record や raw バイナリファイルを生成する場合に
.B \-S
を用いれば、デバッグ情報を持つセクションを削除できる。また、バイナリファ
イルに不要な情報を持ったセクションを消去するのに
.B \-R
が役に立つ場合もある。
.PP
.I infile
.I outfile
はそれぞれ入力・出力ファイルである。
.I outfile
が指定されないと
.B objcopy
は一時ファイルを作成し、その結果を入力ファイルの名前にリネームする (す
なわちもとの入力ファイルは破壊される)。

.TP
.B \-I \fIbfdname\fR, \fB\-\-input\-target=\fIbfdname
入力ファイルのオブジェクトフォーマットを
.I bfdname
として取り扱う。通常は自動的に認識する。
.TP
.B \-O \fIbfdname\fR, \fB\-\-output\-target=\fIbfdname
出力ファイルのオブジェクトフォーマットを
.I bfdname
にする。
.TP
.B \-F \fIbfdname\fR, \fB\-\-target=\fIbfdname
入出力ファイルのオブジェクトフォーマットに
.I bfdname
を用いる。すなわち入力ファイルを変換せずに単に出力ファイルにコピーする。
.TP
.B \-R \fIsectionname\fR, \fB\-\-remove-section=\fIsectionname
指定したセクションをファイルから削除する。このオプションは複数回指定す
ることができる。このオプションを誤って用いると、出力ファイルが役立たず
になる可能性がある。
.TP
.B \-S\fR, \fB\-\-strip\-all
リロケーション情報とシンボル情報を入力ファイルからコピーしない。
.TP
.B \-g\fR, \fB\-\-strip\-debug
デバッグシンボルを入力ファイルからコピーしない。
.TP
.B \-\-strip\-unneeded
リロケーション処理に不要なシンボルをすべて取り去る。
.TP
.B \-K \fIsymbolname\fR, \fB\-\-keep\-symbol=\fIsymbolname
入力ファイルから \fIsymbolname\fP という名前のシンボルだけをコピーする。
複数回指定できる。
.TP
.B \-N \fIsymbolname\fR, \fB\-\-strip\-symbol=\fIsymbolname
入力ファイルの \fIsymbolname\fP という名前のシンボルをコピーしない。
複数回指定できる。
.TP
.B \-L \fIsymbolname\fR, \fB\-\-localize\-symbol=\fIsymbolname
.I symbolname
をそのファイルにローカルなものにし、外部から見えないようにする。
複数回指定できる。
.TP
.B \-W \fIsymbolname\fR, \fB\-\-weaken\-symbol=\fIsymbolname
.I symbolname
を weak にする。
複数回指定できる。
.TP
.B \-x\fR, \fB \-\-discard\-all
入力ファイルのグローバルでないシンボルはコピーしない。
.TP
.B \-X\fR, \fB\-\-discard\-locals
コンパイラが生成したローカルなシンボル (通常 "L" または 
"." ではじまるシンボル) はコピーしない。
.TP
.B \-b \fIbyte\fR, \fB\-\-byte=\fIbyte
入力ファイルを interleave づつ区切った各セクションから \fIbyte\fP バイ
ト目だけをコピーする (ヘッダデータは影響されない)。 \fIbyte\fP の範囲は
0 から interleave-1 までである。 \fIinterleave\fP の値は
.BR \-i "(または" \-\-interleave ")"
オプションで指定する。
このオプションは ROM プログラム用のファイルを作成するときに便利である。出
力ターゲット srec と共に用いられることが多い。
.TP
.B \-i \fIinterleave\fR, \fB\-\-interleave=\fIinterleave
\fIinterleave\fP バイトにつき 1 バイトづつをコピーする。デフォルトは 4
である。何番目のバイトをコピーするかは
.BR \-b "(または" \-\-byte
) オプションで指定する。 \fB\-b\fP も \fB\-\-bytes\fP も指定されなかっ
た場合は interleave は無視される。
.TP
.B \-p\fR, \fB\-\-preserve\-dates
出力ファイルのアクセス時刻と修正時刻を入力ファイルと同じにする。
.TP
.B \-\-debugging
可能ならばデバッグ情報を変換する。このオプションはデフォルトにはなって
いない。すべてのデバッグフォーマットがサポートされているわけではないし、
この変換には時間がかかるからである。
.TP
.B \-\-gap\-fill=\fIval
セクション間のギャップを \fIval\fP で埋める。この動作は
セクションの
.I load address
(LMA) に適用される。これはセクションのサイズを抵位アドレスの分増やし、
その余分を \fIval\fP で埋めることでなされる。
.TP
.B \-\-pad\-to=\fIaddress
出力ファイルをロードアドレス \fIaddress\fP まで水増しする。
これは最後のセクションのサイズを増やすことでなされる。
余分なスペースは 
\fB\-\-gap\-fill\fP で指定された値で埋められる (デフォルトは 0)。
.TP
.B \fB\-\-set\-start=\fIval
新しいファイルのスタートアドレスを \fIval\fP に設定する。すべてのオブ
ジェクトファイルフォーマットでこの指定が可能ではないことに注意すること。
.TP
.B \fB\-\-adjust\-start=\fIincr
スタートアドレスを \fIincr\fP だけ増やす。すべてのオブジェクトファイル
フォーマットでこの指定が可能ではないことに注意すること。
.TP
.B \fB\-\-adjust\-vma=\fIincr
すべてのセクション (スタートアドレスも含まれる) のアドレスを 
\fIincr\fP だけ増やす。すべてのオブジェクトファイルフォーマットで任意
のアドレス設定が指定が可能なわけではないことに注意すること。またこのオ
プションではそれぞれのセクションがロードされるアドレスを変えてしまうの
で、プログラムが動かなくなる可能性がある
.TP
.B \fB\-\-adjust\-section\-vma=\fIsection{=,+,-}val
名前が \fIsection\fP のセクションのアドレスを設定する。 \fI=\fP が用い
られた場合はセクションのアドレスは \fIval\fP にされる。それ以外の場合
はセクションのアドレスから \fIval\fP が増減される。上記の 
\fB\-\-adjust\-vma\fP に関するコメントを参照のこと。 \fIsection\fP が
入力ファイルに存在しない場合は警告グメッセージが表示される (ただし 
\fB\-\-no\-adjust\-warning\fP が指定されていたら表示しない)。
.TP
.B \fB\-\-adjust\-warnings
\fB\-\-adjust\-section\-vma\fP が指定されているとき、
対象となるセクションが存在しなければ警告メッセージを表示する。
デフォルトの動作である。
.TP
.B \fB\-\-no\-adjust\-warnings
\fB\-\-adjust\-section\-vma\fP が指定されているとき、かつ対象となるセ
クションが存在していなくても警告メッセージを表示しない。
.TP
.B \fB\-\-set\-section\-flags=\fIsection=flags
指定したセクションのフラグを設定する。引数 \fIflags\fP はコンマ (,) で
区切られたフラグ文字列である。認識される文字列は \fIalloc\fP、 
\fIload\fP、 \fIreadonly\fP、 \fIcode\fP、 \fIdata\fP、 \fIrom\fP であ
る。すべてのフラグがあらゆるフォーマットで有効なわけではないことに注意
すること。
.TP
.B \fB\-\-add\-section=\fIsectionname=filename
ファイルをコピーするときに \fIsectionname\fP という名前のセクションを
追加する。この新しいセクションの内容はファイル \fIfilename\fP から取ら
れる。このオプションが機能するのは、任意のセクション名をサポートしてい
るフォーマットだけである。
.TP
.B \-\-change\-leading\-char
オブジェクトファイルのフォーマットによっては、シンボル名の先頭に特定の
文字を使っている場合がある。よくある例はアンダースコア (_) で、これは
コンパイラがすべてのシンボル名に前置する。このオプションを指定すると
.B objcopy
はフォーマット変換の際にすべてのシンボルにおける先頭文字を変更しようと
する。同じ先頭文字を持つオブジェクト間では、このオプションは意味を持た
ない。異なる場合は、場合に応じて先頭文字が追加されたり削除、変更された
りする。
.TP
.B \-\-remove\-leading\-char
グローバルシンボルの先頭文字がオブジェクトファイルに特有のものであった
場合、これを削除する。通常はアンダースコア (_) がこれにあたる。このオ
プションはすべてのグローバルシンボルから先頭にあるアンダースコアを削除
する。これは (シンボル名の命名流儀が異なる) 複数のフォーマットに属する
オブジェクト群を同時にリンクする場合に有用である。このオプションは 
\fB\-\-change\-leading\-char\fP とは異なる。後者では出力のフォーマット
にかかわらず、該当したケースではすべて変更が行われる。
.TP
.B \-\-weaken
ファイルのすべての global なシンボルを weak に変更する。
.TP
.\" weak symbol?
.B \-v\fR, \fB\-\-verbose
詳細出力モード。修正されたすべてのオブジェクトファイルをリストする。書
庫の場合は"\fBobjcopy \-V\fR" とすると書庫のすべてのメンバーを表示する。
.TP
.B \-V\fR, \fB\-\-version
.B objcopy
のバージョン番号を表示して終了する。
.TP
.B \-\-help
.B objcopy
のオプションの要約を表示して終了する。

.SH 関連項目
.B info
の `\fB binutils \fP' エントリ、
.IR "The GNU Binary Utilities" ,
Roland H. Pesch (June 1993)、

.SH 著作権
Copyright (c) 1993, 94, 95, 96, 1997 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.