Provided by: manpages-ja_0.5.0.0.20161015+dfsg-1_all bug

名前

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

書式

       objcopy
              [-F bfdname | --target=bfdname] [-I bfdname | --input-target=bfdname]
              [-O bfdname | --output-target=bfdname]
              [-R sectionname | --remove-section=sectionname] [-S | --strip-all]
              [-g | --strip-debug] [--strip-unneeded] [-K symbolname | --keep-symbol=symbolname]
              [-N symbolname | --strip-symbol=symbolname]
              [-L symbolname | --localize-symbol=symbolname]
              [-W symbolname | --weaken-symbol=symbolname] [-x | --discard-all]
              [-X | --discard-locals] [-b byte | --byte=byte]
              [-i interleave | --interleave=interleave] [-p | --preserve-dates] [--debugging]
              [--gap-fill=val] [--pad-to=address] [--set-start=val] [--adjust-start=incr]
              [--adjust-vma=incr] [--adjust-section-vma=section{=,+,-}val] [--adjust-warnings]
              [--no-adjust-warnings] [--set-section-flags=section=flags]
              [--add-section=sectionname=filename] [--change-leading-char]
              [--remove-leading-char] [--weaken] [-v | --verbose] [-V | --version] [--help]
              infile [outfile]

説明

       GNU objcopy ユーティリティはオブジェクトファイルの内容を別ファイルにコピーする。 objcopy
       はオブジェクトファイルの読み書きに GNU BFD ライブラリを用いる。これに よって書き込み先の
       ファイルのオブジェクトフォーマットを読み込みファイル のフォーマットから変更することができ
       る。 objcopy の詳細な動作はコマンドラインオプションによって決定される。

       objcopy は変換を行う際に一時ファイルを作成し、動作後にこれを消去する。 objcopy 変換作業は
       すべて BFD によって行われる。したがって BFD が種々のフォー マットに関して持っているすべて
       の情報を利用することができ、明示しないで もほとんどのフォーマットを認識できる。

       objcopy はターゲットを srec に指定する (つまり -O srec とする) ことによって S-record を生
       成することもできる。

       objcopy は出力ターゲットを binary に指定する (つまり -O binary とする) ことによって raw バ
       イナリファイルを生成することもできる。この 際には、基本的には入力オブジェクトファイルの内
       容のメモリダンプが作られ る。メモリダンプは出力ファイルにコピーされる最抵位のセクションの
       仮想ア ドレスからスタートする。

       S-record や raw バイナリファイルを生成する場合に -S を用いれば、デバッグ情報を持つセクショ
       ンを削除できる。また、バイナリファ イルに不要な情報を持ったセクションを消去するのに -R が
       役に立つ場合もある。

       infileoutfile はそれぞれ入力・出力ファイルである。 outfile が指定されないと objcopy は
       一時ファイルを作成し、その結果を入力ファイルの名前にリネームする (す なわちもとの入力ファ
       イルは破壊される)。

       -I bfdname, --input-target=bfdname
              入力ファイルのオブジェクトフォーマットを bfdname として取り扱う。通常は自動的に認識
              する。

       -O bfdname, --output-target=bfdname
              出力ファイルのオブジェクトフォーマットを bfdname にする。

       -F bfdname, --target=bfdname
              入出力ファイルのオブジェクトフォーマットに bfdname を用いる。すなわち入力ファイルを
              変換せずに単に出力ファイルにコピーする。

       -R sectionname, --remove-section=sectionname
              指定したセクションをファイルから削除する。このオプションは複数回指定す ることができ
              る。このオプションを誤って用いると、出力ファイルが役立たず になる可能性がある。

       -S, --strip-all
              リロケーション情報とシンボル情報を入力ファイルからコピーしない。

       -g, --strip-debug
              デバッグシンボルを入力ファイルからコピーしない。

       --strip-unneeded
              リロケーション処理に不要なシンボルをすべて取り去る。

       -K symbolname, --keep-symbol=symbolname
              入力ファイルから symbolname という名前のシンボルだけをコピーする。 複数回指定でき
              る。

       -N symbolname, --strip-symbol=symbolname
              入力ファイルの symbolname という名前のシンボルをコピーしない。 複数回指定できる。

       -L symbolname, --localize-symbol=symbolname
              symbolname をそのファイルにローカルなものにし、外部から見えないようにする。 複数回
              指定できる。

       -W symbolname, --weaken-symbol=symbolname
              symbolname を weak にする。 複数回指定できる。

       -x,  --discard-all
              入力ファイルのグローバルでないシンボルはコピーしない。

       -X, --discard-locals
              コンパイラが生成したローカルなシンボル (通常 "L" または "." ではじまるシンボル) は
              コピーしない。

       -b byte, --byte=byte
              入力ファイルを interleave づつ区切った各セクションから byte バイ ト目だけをコピーす
              る (ヘッダデータは影響されない)。 byte の範囲は 0 から interleave-1 までである。
              interleave の値は -i(または--interleave) オプションで指定する。 このオプションは
              ROM プログラム用のファイルを作成するときに便利である。出 力ターゲット srec と共に用
              いられることが多い。

       -i interleave, --interleave=interleave
              interleave バイトにつき 1 バイトづつをコピーする。デフォルトは 4 である。何番目のバ
              イトをコピーするかは -b(または--byte ) オプションで指定する。 -b--bytes も指定
              されなかっ た場合は interleave は無視される。

       -p, --preserve-dates
              出力ファイルのアクセス時刻と修正時刻を入力ファイルと同じにする。

       --debugging
              可能ならばデバッグ情報を変換する。このオプションはデフォルトにはなって いない。すべ
              てのデバッグフォーマットがサポートされているわけではないし、 この変換には時間がかか
              るからである。

       --gap-fill=val
              セクション間のギャップを val で埋める。この動作は セクションの load address (LMA)
              に適用される。これはセクションのサイズを抵位アドレスの分増やし、 その余分を val で
              埋めることでなされる。

       --pad-to=address
              出力ファイルをロードアドレス address まで水増しする。 これは最後のセクションのサイ
              ズを増やすことでなされる。 余分なスペースは --gap-fill で指定された値で埋められる
              (デフォルトは 0)。

       --set-start=val
              新しいファイルのスタートアドレスを val に設定する。すべてのオブ ジェクトファイル
              フォーマットでこの指定が可能ではないことに注意すること。

       --adjust-start=incr
              スタートアドレスを incr だけ増やす。すべてのオブジェクトファイル フォーマットでこの
              指定が可能ではないことに注意すること。

       --adjust-vma=incr
              すべてのセクション (スタートアドレスも含まれる) のアドレスを incr だけ増やす。すべ
              てのオブジェクトファイルフォーマットで任意 のアドレス設定が指定が可能なわけではない
              ことに注意すること。またこのオ プションではそれぞれのセクションがロードされるアドレ
              スを変えてしまうの で、プログラムが動かなくなる可能性がある

       --adjust-section-vma=section{=,+,-}val
              名前が section のセクションのアドレスを設定する。 = が用い られた場合はセクションの
              アドレスは val にされる。それ以外の場合 はセクションのアドレスから val が増減され
              る。上記の --adjust-vma に関するコメントを参照のこと。 section が 入力ファイルに存
              在しない場合は警告グメッセージが表示される (ただし --no-adjust-warning が指定されて
              いたら表示しない)。

       --adjust-warnings
              --adjust-section-vma が指定されているとき、 対象となるセクションが存在しなければ警
              告メッセージを表示する。 デフォルトの動作である。

       --no-adjust-warnings
              --adjust-section-vma が指定されているとき、かつ対象となるセ クションが存在していな
              くても警告メッセージを表示しない。

       --set-section-flags=section=flags
              指定したセクションのフラグを設定する。引数 flags はコンマ (,) で 区切られたフラグ文
              字列である。認識される文字列は allocloadreadonlycodedatarom であ
              る。すべてのフラグがあらゆるフォーマットで有効なわけではないことに注意 すること。

       --add-section=sectionname=filename
              ファイルをコピーするときに sectionname という名前のセクションを 追加する。この新し
              いセクションの内容はファイル filename から取ら れる。このオプションが機能するの
              は、任意のセクション名をサポートしてい るフォーマットだけである。

       --change-leading-char
              オブジェクトファイルのフォーマットによっては、シンボル名の先頭に特定の 文字を使って
              いる場合がある。よくある例はアンダースコア (_) で、これは コンパイラがすべてのシン
              ボル名に前置する。このオプションを指定すると objcopy はフォーマット変換の際にすべて
              のシンボルにおける先頭文字を変更しようと する。同じ先頭文字を持つオブジェクト間で
              は、このオプションは意味を持た ない。異なる場合は、場合に応じて先頭文字が追加された
              り削除、変更された りする。

       --remove-leading-char
              グローバルシンボルの先頭文字がオブジェクトファイルに特有のものであった 場合、これを
              削除する。通常はアンダースコア (_) がこれにあたる。このオ プションはすべてのグロー
              バルシンボルから先頭にあるアンダースコアを削除 する。これは (シンボル名の命名流儀が
              異なる) 複数のフォーマットに属する オブジェクト群を同時にリンクする場合に有用であ
              る。このオプションは --change-leading-char とは異なる。後者では出力のフォーマット
              にかかわらず、該当したケースではすべて変更が行われる。

       --weaken
              ファイルのすべての global なシンボルを weak に変更する。

       -v, --verbose
              詳細出力モード。修正されたすべてのオブジェクトファイルをリストする。書 庫の場合
              は"objcopy -V" とすると書庫のすべてのメンバーを表示する。

       -V, --version
              objcopy のバージョン番号を表示して終了する。

       --help objcopy のオプションの要約を表示して終了する。

関連項目

       info の ` binutils ' エントリ、 The GNU Binary Utilities, Roland H. Pesch (June 1993)、

著作権

       Copyright (c) 1993, 94, 95, 96, 1997 Free Software Foundation, Inc.

       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.

       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.

       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.