Manpages

名 前

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.