ADDR2LINE(1)

名称
addr2line - アドレスをファイル名と行番号に変換する

書式
addr2line [-b bfdname|--target=bfdname]
          [-C|--demangle[=style]]
          [-e filename|--exe=filename]
          [-f|--functions] [-s|--basename]
          [-H|--help] [-V|--version]
          [addr addr ...]

解説
addr2line はプログラムのアドレスをファイル名と行番号に変換します。 アドレスと実行ファイルが与えられると、実行ファイル中のデバッグ情報を 使って与えられたアドレスをファイル名と行番号に対応づけます。

使用される実行ファイルは -e オプションで指定します。デフォルトは a.out です。

addr2line には 2 つの動作モードがあります。

1 つ目では、16進数のアドレスをコマンドラインで指定して、 addr2line が各アドレスに対応するファイル名と行番号を表示します。

2 つ目では、 addr2line は 16進数のアドレスを標準入力から読み込んで、各アドレスに 対応するファイル名と行番号を標準出力に表示します。 このモードでは addr2line をパイプ中で、動的に選び出されたアドレスを変換するために利用できます。

出力の形式は ファイル名:行番号 です。ファイル名と行番号は 各アドレス毎に改行して出力されます。 -f オプションが指定されると、 ファイル名:行番号 の行の前に アドレスを含む関数の名前を 関数名 の行として出力します。

ファイル名または関数名が特定できない場合は、 addr2line はそれらが表示されるべき場所に 2 つのクエスチョンマークを表示します。 行番号が特定できない場合は addr2line は 0 を表示します。

オプション
ここに選択肢として表示されている、 長形式および短形式のオプションは、等価です。

-b bfdname
--target=bfdname
    オブジェクトファイルのオブジェクト・コード形式を bfdname で指定します。

-C
--demangle[=style]
    シンボル名の内部表現をユーザレベルの表現にデコード (demangle) します。 加えてシステムが付加した先頭のアンダスコアも取り除くので、 これによって C++ の関数名がわかりやすくなります。 コンパイラ毎に、マングル方法が異なります。 オプションのデマングルスタイル引数を使用することで、 コンパイラにあったデマングルスタイルを選択可能です。

-e filename
--exe=filename
    アドレスを変換する対象の実行ファイル名を指定します。 デフォルトのファイル名は a.out です。

-f
--functions
    ファイルと行番号情報に加えて関数名を表示します。

-s
--basenames
    各ファイル名のベース (パス名を除いたファイル名部分) のみを表示します。

関連項目
Info の binutils の項。

COPYRIGHT
Copyright (c) 1991, 92, 93, 94, 95, 96, 97, 98, 99, 2000, 2001, 2002 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".

日本語訳
野首 寛高(hnokubi@yyy.or.jp): FreeBSD 用に翻訳