8.2. デバッグプログラムの準備
デバッグ情報を使用したプログラムのコンパイル
GNU デバッガー が読み取り可能なデバッグ情報で C プログラムをコンパイルするには、-g
オプションを指定して gcc
コンパイラーが実行されていることを確認します。
scl enable devtoolset-9 'gcc -g -o output_file input_file...'
$ scl enable devtoolset-9 'gcc -g -o output_file input_file...'
同様に、デバッグ情報を使用して C++ プログラムをコンパイルするには、以下を実行します。
scl enable devtoolset-9 'g++ -g -o output_file input_file...'
$ scl enable devtoolset-9 'g++ -g -o output_file input_file...'
例8.1 デバッグ情報を使用した C プログラムのコンパイル
以下の内容を fibonacci.c
含むという名前のソースファイルについて考えてみましょう。
GNU デバッガー のデバッグ情報とともに、Red Hat Developer Toolset の GCC を使用してコマンドラインでこのプログラムをコンパイルします。
scl enable devtoolset-9 'gcc -g -o fibonacci fibonacci.c'
$ scl enable devtoolset-9 'gcc -g -o fibonacci fibonacci.c'
これにより、現在の作業ディレクトリーに fibonacci
という名前のバイナリーファイルが作成されます。
既存パッケージのデバッグ情報のインストール
システムにすでにインストールされているパッケージのデバッグ情報をインストールするには、次のコマンドを実行します。
debuginfo-install package_name
# debuginfo-install package_name
debuginfo-install
ユーティリティーをシステムで使用できるようにするには、yum-utils パッケージがインストールされている必要があることに注意してください。
例8.2 glibc パッケージのデバッグ情報のインストール
glibc パッケージのデバッグ情報をインストールします。
debuginfo-install glibc
# debuginfo-install glibc
Loaded plugins: product-id, refresh-packagekit, subscription-manager
--> Running transaction check
---> Package glibc-debuginfo.x86_64 0:2.17-105.el7 will be installed
...