名 前
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 が 役 に 立 つ 場 合 も あ る 。
infile
と outfile は そ れ ぞ
れ 入 力 ・ 出 力
フ ァ イ ル で あ
る 。 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 は コ
ン マ (,) で 区 切 ら
れ た フ ラ グ 文
字 列 で あ る 。
認 識 さ れ る 文
字 列 は alloc、
load、 readonly、
code、 data、 rom で
あ る 。 す べ て
の フ ラ グ が あ
ら ゆ る フ ォ ー
マ ッ ト で 有 効
な わ け で は な
い こ と に 注 意
す る こ と 。
−−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.