strip − オブジェクトファイルからシンボルの削除 |
strip [−F bfdname │−−target=bfdname] [−I bfdname │−−input−target=bfdname] [−O bfdname │−−output−target=bfdname] [−s│−−strip−all] [−S│−g│−d│−−strip−debug] [−K symbolname │−−keep−symbol=symbolname] [−N symbolname │−−strip−symbol=symbolname] [−w│−−wildcard] [−x│−−discard−all] [−X │−−discard−locals] [−R sectionname │−−remove−section=sectionname] [−o file] [−p│−−preserve−dates] [−−only−keep−debug] [−v │−−verbose] [−V│−−version] [−−help] [−−info] objfile... |
GNU strip はオブジェクトファイル objfile からシンボルをすべて削除しま す。オブジェクトファイルのリストにアーカイブが含まれていても構 い ま せ ん。少なくともひとつのオブジェクトファイルが必要です。 strip は変更されたコピーを別名で作成せず、引数で指定したファイルそのも のを変更します。 |
−F bfdname |
−−target=bfdname |
オリジナルの objfile を bfdname オブジェクトコード形式のファイルと して扱い、それと同じ形式で上書きします。 |
−−help |
strip のオプションの一覧を表示して終了します。 |
−−info |
利用可能なアーキテクチャとオブジェクト形式のすべての一覧を表示しま す。 |
−I bfdname |
−−input−target=bfdname |
オリジナルの objfile を bfdname オブジェクトコード形式のファイルと して扱います。 |
−O bfdname |
−−output−target=bfdname |
objfile を bfdname 出力形式のファイルに置き換えます。 |
−R sectionname |
−−remove−section=sectionname |
出 力ファイルから sectionname という名前のセクションを削除します。 このオプションは 1 回以上使うことができます。このオプションを不 適 切に使用すると、オブジェクトファイルが使用できなくなるかもしれない ことに注意してください。 |
−s |
−−strip−all |
すべてのシンボルを削除します。 |
−g |
||
−S |
||
−d |
−−strip−debug |
デバッギングシンボルだけを削除します。 |
−−strip−unneeded |
再配置処理に不必要なシンボルをすべて削除します。 |
−K symbolname |
−−keep−symbol=symbolname |
元ファイルのシンボル symbolname だけを保持します。このオプションは 1 回以上使うことができます。 |
−N symbolname |
−−strip−symbol=symbolname |
元ファイルからシンボル symbolname を削除します。このオプションは 1 回以上使うことができ、また −K 以外の strip のオプションと併用す る ことができます。 |
−o file |
存 在するファイルを置き換える代わりに、 strip された出力を file に 出します。この引数を使用する時には、objfile 引数は 1 つしか指定 で きません。 |
−p |
−−preserve−dates |
ファイルのアクセス時刻と更新時刻を保存します。 |
−w |
−−wildcard |
他 のコマンド行オプションで使用される symbolnames において、正規表 現の使用を許可します。疑問符 (?)、アスタリスク (*)、バック ス ラッ シュ (\)、角括弧 ([]) の演算子をシンボル名のどこでも使用できます。 シンボル名の最初の文字が感嘆符 (!) である場合、そのシンボルに対 す るスイッチの意味が反転します。例えば、次の -w -K !foo -K fo* で は、 文字 ‘‘fo’’ で始まるシンボルだけを保持し、シンボル ‘‘foo’’ は破棄することになります。 |
−x |
−−discard−all |
グローバルでないシンボルを削除します。 |
−X |
−−discard−locals |
コンパイラによって生成されたローカルシンボル (これは通常 L か . で始まります。) を削除します。 |
−−only−keep−debug |
ファイルから削除する際に、−−strip−debug により削除されるものはすべ て除去しつつ、デバッグ用セクションは残します。 このオプションの意図は、−−add−gnu−debuglink と一緒に使い、 2 パー トの実行可能形式を生成することにあります。第一に、削除済みのバイナ リの占める RAM 容量がより少なくなること。第二に、デバッグ機能が 必 要な場合のみデバッグ情報ファイルが必要となることです。これらのファ イルを生成するに際し、推奨する手順は次の通りです。 |
1.<実行可能形式を普通通りリンクする。この名前を> |
"foo" とする。 |
1.<"objcopy −−only−keep−debug foo foo.dbg" を実行し> |
デバッグ情報を含むファイルを生成する。 |
1.<"objcopy −−strip−debug foo" を実行し> |
ストリップされた実行可能形式を生成する。 |
1.<"objcopy −−add−gnu−debuglink=foo.dbg foo"を実行し> |
ストリップされた実行可能形式に、デバッグ情報へのリンクを追加す る。 |
注意 − デバッグ情報ファイルの拡張子を選ぶ際に ".dbg" を使うことは任 意です。 "−−only−keep−debug" のステップも省略可能です。代わりに次の ようにすることができます。 |
1.<通常通り実行可能形式をリンクする> |
1.<"foo" を "foo.full"にコピーする> |
1.<"strip −−strip−debug foo"を実行する> |
1.<"objcopy −−add−gnu−debuglink=foo.full foo |
こ こで、−−add−gnu−debuglink により指し示されたファイルは完全実行可 能形式です。これは、−−only−keep−debug スイッチにより生成される必 要 はありません。 |
−V |
−−version |
strip のバージョンを表示して終了します。 |
−v |
−−verbose |
冗 長 な出力: 変更されたすべてのオブジェクトファイルを列挙します。 アーカイブの場合、 strip −v はアーカイブのすべてのメンバを列挙しま す。 |
Info の binutils エントリ。 |
Copyright (c) 1991, 92, 93, 94, 95, 96, 97, 98, 99, 2000, 2001, 2002, 2003 Free Software Foundation, Inc. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with no Invariant Sections, with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the license is included in the section entitled ‘‘ GNU Free Documentation License’’. |