スポンサーリンク

STRIP

名称
書式
解説
オプション
関連項目
COPYRIGHT

名称

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

オリジナルの objfilebfdname オブジェクトコード形式のファイルと して扱います。

−O bfdname

−−output−target=bfdname

objfilebfdname 出力形式のファイルに置き換えます。

−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

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’’.

スポンサーリンク