デバッグ情報取得
概要
環境
デバック情報(debuginfo)
各パッケージにはデバッグ情報が付いてこない。よって別途、デバッグ情報をインストールする必要がある。デバッグ情報とはシンボル情報やソースコードで、GDBなどのデバッカはバイナリの命令とソースコードを紐付けてくれる。デフォルトでデバッガは機械語から逆アセンブラしてくれて、アセンブラレベルでデバッグはできるが、やはりC言語でデバッグしたいのでとても便利。
デバッグ情報インストール
man debuginfo-install NAME debuginfo-install SYNOPSIS debuginfo-install package DESCRIPTION debuginfo-install is a program which installs the RPMs needed to debug the specified package. The package argument can be a wildcard, but will only match installed packages. debuginfo-install will then enable any debuginfo repositories, and install the relevant debuginfo rpm. EXAMPLES Download and install all the RPMs needed to debug the kernel RPM: debuginfo-install kernel
debuginfo-install パッケージ名 でデバッグ情報のパッケージをインストール。
gcc -g などでコンパイルすれば、glibcの中もCのソースコードでデバッグできる。
既存のバイナリ
既存のバイナリのパッケージに対しては、ソースからビルドし直せばソースコードへのリンク付きでバイナリが生成されるのでソースコードレベルでデバッグできるようになるようだ。
カーネル
カーネルのdebuginfo導入方法
yum install kernel-debuginfo
debuginfo-install kernel