#author("2018-06-12T16:56:13+00:00","","")
#author("2018-06-12T16:58:33+00:00","","")
#topicpath


/////////////////////////////////////////////////////////////////////////////////
* 目次 [#b1469d5b]
#contents();


/////////////////////////////////////////////////////////////////////////////////
* readelf とは [#uda0dfaf]
- ELF ファイルの情報を表示する
- 例えば、とある static lib がどのアーキテクチャでコンパイルされたものなのか、が分かる情報を表示することが出来る

/////////////////////////////////////////////////////////////////////////////////
* 起動オプション [#o9737ddd]
|~option |~description |~remark |
|-h, --file-header |ファイルヘッダ情報を表示する | |
|-l, --program-headers, --segments |プログラムヘッダ情報を表示する | |
|-S, --section-headers, --sections |セクションヘッダ情報を表示する | |
|-e, --headers                     |上記3つのヘッダ情報を表示する | |
|-s, --syms, -symbols              |シンボルテーブル | |
|-r, --relocs                      |リロケーション方法 | |
|-d, --dynamic                     |ダイナミックセグメント | |
|-V, --version-info                |バージョン情報 | |
|-A, --arch-specific               |アーキテクチャ依存 | |
|-I, --histogram                   |パケットリスト長のヒストグラム | |
|-a, --all                         |ヘッダ全てと以上の全て | |
|-n, --notes                       |コアノート (core notes) | |
|-u, --unwind                      |unwind 情報 | |
|-W, --wide                        |80 colmun 以上の行も改行せずに出力する |デフォルトでは80文字を超える場合は開業される |
|-W, --wide                        |80 colmun 以上の行も改行せずに出力する |デフォルトでは80文字を超える場合は改行される |
|-w, --debug-dump                  |DWARF2 デバッグセクションをダンプする | |


/////////////////////////////////////////////////////////////////////////////////
* ELF セクションのダンプ [#pb45a263]
- -x オプションで指定した内容をダンプする。
- セクションはセクション番号で指定する。(セクションは、 -Sオプションで表示されるセクションヘッダに付いている番号)


/////////////////////////////////////////////////////////////////////////////////
* DWARF2 デバッグセクションの読み出し [#n9be9124]


/////////////////////////////////////////////////////////////////////////////////
* 実行例 [#j4680774]
 $ readelf -h ./bash/bash-4.3/lib/glob/libglob.a
 ファイル: ./bash/bash-4.3/lib/glob/libglob.a(gmisc.o)
  ELF ヘッダ:
    マジック:  7f 45 4c 46 02 01 01 00 00 00 00 00 00 00 00 00 
    クラス:                            ELF64
    データ:                            2 の補数、リトルエンディアン
    バージョン:                        1 (current)
    OS/ABI:                            UNIX - System V
    ABI バージョン:                    0
    型:                                REL (再配置可能ファイル)
    マシン:                            Advanced Micro Devices X86-64
    バージョン:                        0x1
    エントリポイントアドレス:          0x0
    プログラムの開始ヘッダ:            0 (バイト)
    セクションヘッダ始点:              21872 (バイト)
    フラグ:                            0x0
    このヘッダのサイズ:                64 (バイト)
    プログラムヘッダサイズ:            0 (バイト)
    プログラムヘッダ数:                0
    セクションヘッダ:                  64 (バイト)
    セクションヘッダサイズ:            24
    セクションヘッダ文字列表索引:      21

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS