Man page - gdb(1)
Available languages:
en jaManual
GDB
名 前書 式
説 明
オ プ シ ョ ン
関 連 項 目
著 作 権
名 前
gdb - GNU デ バ ッ ガ ー
書 式
gdb
[
-help
] [
-nh
] [
-nx
] [
-q
]
[
-batch
] [
-cd=
dir
] [
-f
]
[
-b
bps
]
[
-tty=
dev
] [
-s
symfile
]
[
-e
prog
] [
-se
prog
]
[
-c
core
] [
-p
procID
]
[
-x
cmds
] [
-d
dir
]
[
prog
|
prog procID
|
prog core
]
説 明
GDB を は じ め と す る デ バ ッ ガ ー は 、 プ ロ グ ラ ム が 実 行 中 ま た は ク ラ ッ シ ュ し た 時 に 、 そ の プ ロ グ ラ ム の 「 内 部 」 で 何 が 行 な わ れ て い る か /行 わ れ て い た か を 調 べ る の に 使 用 さ れ ま す 。
GDB は 、 4 つ の 機 能 (加 え て こ れ ら を サ ポ ー ト す る 機 能 ) に よ っ て 実 行 中 に バ グ を 見 つ け る こ と を 手 助 け し ま す 。
|
• |
プ ロ グ ラ ム の 動 作 を 詳 細 に 指 定 し て プ ロ グ ラ ム を 実 行 さ せ る 。 |
||
|
• |
指 定 し た 条 件 で プ ロ グ ラ ム を 停 止 さ せ る 。 |
||
|
• |
プ ロ グ ラ ム が 止 ま っ た 時 に 、 何 が 起 こ っ た か 調 べ る 。 |
||
|
• |
バ グ に よ る 副 作 用 を 修 正 し 、 別 の バ グ を 調 べ る た め プ ロ グ ラ ム の 状 態 を 変 更 す る 。 |
GDB で は C, C++, Fortran, Modula-2 で 書 か れ た プ ロ グ ラ ム の デ バ ッ グ が 行 な え ま す 。
GDB は シ ェ ル コ マ ン ド "gdb" で 起 動 さ れ ま す 。 い っ た ん 起 動 す る と 、 GDB コ マ ン ド "quit" を 実 行 し て 終 了 す る ま で 、 端 末 か ら コ マ ン ド を 読 み 続 け ま す 。 GDB の オ ン ラ イ ン ヘ ル プ は 、 GDB の 中 か ら "help" コ マ ン ド を 実 行 し て 見 る こ と が で き ま す 。
"gdb" は 引 数 や オ プ シ ョ ン 無 し で 起 動 で き ま す が 、 た い て い は 1 つ か 2 つ の 引 数 を つ け て 起 動 し ま す 。 実 行 プ ロ グ ラ ム を 引 数 に す る 場 合 は 以 下 の よ う に し ま す 。
gdb program
ま た 実 行 プ ロ グ ラ ム と core フ ァ イ ル の 両 方 を 指 定 す る こ と も で き ま す 。
gdb program core
も し 実 行 中 の プ ロ セ ス の デ バ ッ グ を 行 な い た い 場 合 に は 、 第 2 引 数 と し て core の 代 わ り に プ ロ セ ス ID を 指 定 す る か 、 あ る い は オ プ シ ョ ン "-p" を 用 い ま す :
gdb program 1234 gdb -p 1234
こ う す れ ば GDB を プ ロ セ ス 1234 に ア タ ッ チ で き ま す 。 -p を 用 い る 場 合 は 、 program の フ ァ イ ル 名 は 省 略 す る こ と が で き ま す 。
よ
く 利 用 さ れ る
GDB
コ マ ン ド
に は 以 下 の よ
う な も の が あ
り ま す 。
break [
file
:]
function
プ レ ー ク ポ イ ン ト を ( file 内 の ) function に 設 定 し ま す 。
run [ arglist ]
プ ロ グ ラ ム の 実 行 を 開 始 し ま す (も し あ れ ば arglist を 引 数 と し て )。
|
bt |
バ ッ ク ト レ ー ス : プ ロ グ ラ ム の ス タ ッ ク を 表 示 し ま す 。 |
print expr
式 の 値 を 表 示 し ま す 。
|
c |
プ ロ グ ラ ム の 実 行 を 再 開 し ま す (た と え ば ブ レ ー ク ポ イ ン ト で 実 行 を 中 断 し た 後 )。 |
next
次 の プ ロ グ ラ ム 行 を 実 行 し ま す (停 止 状 態 の 後 )。 そ の 行 内 の す べ て の 関 数 は 1 ス テ ッ プ で 実 行 さ れ ま す 。
edit [ file :] function
現 在 中 断 し て い る 場 所 の プ ロ グ ラ ム 行 を エ デ ィ タ ー で 開 き ま す 。
list [ file :] function
現 在 中 断 し て い る 場 所 の 近 辺 の プ ロ グ ラ ム ソ ー ス を 表 示 し ま す 。
step
次 の プ ロ グ ラ ム 行 を 実 行 し ま す (停 止 状 態 の 後 )。 も し そ の 行 に 関 数 が 含 ま れ て い れ ば 、 そ の 関 数 内 を ス テ ッ プ 実 行 し て い き ま す 。
help [ name ]
GDB コ マ ン ド name に つ い て の 情 報 や 、 GDB を 使 う 上 で の 一 般 的 な 情 報 を 表 示 し ま す 。
quit
GDB. を 終 了 し ま す 。
GDB の 詳 細 に つ い て は Using GDB: A Guide to the GNU Source-Level Debugger , by Richard M. Stallman and Roland H. Pesch を 参 照 し て 下 さ い 。 同 じ テ キ ス ト は 、 "info" プ ロ グ ラ ム 内 の "gdb" エ ン ト リ か ら オ ン ラ イ ン で 参 照 で き ま す 。
オ プ シ ョ ン
オ プ シ ョ ン 以 外 の 引 数 は 、 実 行 フ ァ イ ル と core フ ァ イ ル (ま た は プ ロ セ ス ID ) を 指 定 し ま す 。 つ ま り オ プ シ ョ ン フ ラ グ と 関 連 づ い て い な い 最 初 の 引 数 は 、 -se オ プ シ ョ ン で 指 定 す る フ ァ イ ル と 同 じ に な り ま す 。 ま た 、 も し も 2番 目 が あ れ ば 、 -c オ プ シ ョ ン で 指 定 す る フ ァ イ ル と 同 じ に な り ま す 。 オ プ シ ョ ン の 多 く は 、 長 い 表 記 法 と 短 い 表 記 法 の 両 方 で 指 定 す る こ と が で き ま す が 、 こ こ で は そ の 両 方 を 示 し ま す 。 長 い 表 記 法 は 、 ど の オ プ シ ョ ン で あ る の か が 明 確 で あ れ ば 、 短 く 切 り 詰 め て も 構 い ま せ ん 。 (好 み に よ り - の 代 わ り に + が 使 用 で き ま す が 、 こ こ で は よ く 用 い ら れ る 表 記 で 記 し ま す 。 )
す
べ て の オ プ シ
ョ ン と コ マ ン
ド ラ イ ン 引 数
は 、 指 定 し た
順 番 に 処 理 さ
れ ま す 。
-x
オ
プ シ ョ ン が 使
用 さ れ る と 、
こ の 順 番 は 変
わ り ま す 。
-help
|
-h |
短 い 説 明 つ き で 、 す べ て の オ プ シ ョ ン を 表 示 し ま す 。 |
-symbols=
file
-s
file
シ ン ボ ル テ ー ブ ル を フ ァ イ ル file か ら 読 み ま す 。
-write
実 行 フ ァ イ ル や コ ア フ ァ イ ル へ の 書 き 込 み を 有 効 に し ま す 。
-exec=
file
-e
file
フ ァ イ ル file を 実 行 可 能 フ ァ イ ル と し て 利 用 し ま す 。 core dump と 連 係 し て pure data を 調 べ る の に も 用 い ら れ ま す 。
-se= file
フ ァ イ ル file か ら シ ン ボ ル テ ー ブ ル を 読 み 、 同 時 に そ れ を 実 行 可 能 フ ァ イ ル と し て 利 用 し ま す 。
-core=
file
-c
file
フ ァ イ ル file を core dump と し て 利 用 し ま す 。
-command=
file
-x
file
フ ァ イ ル file か ら GDB の コ マ ン ド を 読 み 込 み 、 実 行 し ま す 。
-ex command
指 定 さ れ た GDB command を 実 行 し ま す 。
-directory=
directory
-d
directory
ソ ー ス フ ァ イ ル を 探 す 検 索 パ ス に directory を 追 加 し ま す 。
|
-nh |
˜/.config/gdb/gdbinit 、 ˜/.gdbinit 、 ˜/.config/gdb/gdbearlyinit 、 ˜/.gdbearlyinit の 各 フ ァ イ ル か ら 、 コ マ ン ド を 実 行 し ま せ ん 。 |
||
|
-nx |
|||
|
-n |
˜/.gdbinit ま た は .gdbearlyinit の 初 期 化 フ ァ イ ル か ら コ マ ン ド 実 行 し ま せ ん 。 |
-quiet
|
-q |
起 動 時 の メ ッ セ ー ジ お よ び copyright を 表 示 し ま せ ん 。 こ れ ら の メ ッ セ ー ジ は バ ッ チ モ ー ド で も 抑 制 さ れ ま す 。 |
-batch
バ ッ チ モ ー ド で 動 作 し ま す 。 -x で 指 定 し た フ ァ イ ル (お よ び 抑 制 さ れ て い な け れ ば .gdbinit フ ァ イ ル ) 内 の 全 て の コ マ ン ド を 処 理 し た 後 、 戻 り 値 と し て 0 を 返 し て 終 了 し ま す 。 コ マ ン ド フ ァ イ ル 内 の GDB コ マ ン ド の 実 行 中 に エ ラ ー が 生 じ た 場 合 は 、 0 以 外 の 値 で 終 了 し ま す 。
バ ッ チ モ ー ド は GDB を フ ィ ル タ と し て 実 行 す る 場 合 、 た と え ば プ ロ グ ラ ム を ダ ウ ン ロ ー ド し て 別 の コ ン ピ ュ ー タ 上 で 実 行 し た り す る 場 合 に 便 利 で す 。 以 下 の メ ッ セ ー ジ
Program exited normally. (プ ロ グ ラ ム は 正 常 に 終 了 し ま し た 。 )
は 通 常 、 GDB の 制 御 端 末 上 で 実 行 さ れ る プ ロ グ ラ ム が 終 了 す る た び に 出 力 さ れ る も の で す が 、 バ ッ チ モ ー ド で は こ の よ う な メ ッ セ ー ジ は 出 力 さ れ ま せ ん 。
-cd= directory
カ レ ン ト デ ィ レ ク ト リ の 代 わ り に directory を GDB の 作 業 用 デ ィ レ ク ト リ と し て 実 行 し ま す 。
-fullname
|
-f |
Emacs が GDB を サ ブ プ ロ セ ス と し て 実 行 す る 際 に 、 こ の オ プ シ ョ ン を 付 加 し ま す 。 こ の と き GDB は 、 ス タ ッ ク フ レ ー ム が 表 示 さ れ る た び に (プ ロ グ ラ ム が 中 断 す る た び に )、 完 全 な フ ァ イ ル 名 と 行 番 号 を 標 準 的 な 認 識 し や す い 形 式 で 表 示 し ま す 。 こ の 表 示 書 式 は 2 つ の 32 文 字 、 フ ァ イ ル 名 、 行 番 号 と コ ロ ン で 区 切 ら れ た 文 字 位 置 、 改 行 の 順 に な っ て い ま す 。 こ れ は Emacs-GDB イ ン タ フ ェ ー ス プ ロ グ ラ ム に お い て 、 フ レ ー ム に 対 応 す る ソ ー ス コ ー ド を 表 示 す る た め に 2 つ の 32 文 字 を 使 う こ と に な っ て い る か ら で す 。 |
-b bps
リ モ ー ト デ バ ッ グ 用 に GDB が 利 用 す る シ リ ア ル イ ン タ フ ェ ー ス の 回 線 速 度 を (ボ ー レ ー ト ま た は ビ ッ ト /秒 で ) 設 定 し ま す 。
-tty= device
プ ロ グ ラ ム の 標 準 入 出 力 に device を 利 用 し ま す 。
関 連 項 目
GDB の 完 全 な ド キ ュ メ ン ト は Texinfo マ ニ ュ ア ル と し て メ ン テ ナ ン ス さ れ て い ま す 。 "info" と "gdb" の 両 プ ロ グ ラ ム 、 お よ び GDB の Texinfo ド キ ュ メ ン ト が 適 切 に イ ン ス ト ー ル さ れ て い れ ば 、 以 下 の コ マ ン ド
info gdb
を 実 行 し て 完 全 な マ ニ ュ ア ル を 参 照 で き ま す 。
Using GDB: A Guide to the GNU Source-Level Debugger , Richard M. Stallman and Roland H. Pesch, July 1991.
著 作 権
Copyright (c) 1988-2022 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.3 or any later version published by the Free Software Foundation; with the Invariant Sections being "Free Software" and "Free Software Needs Free Documentation", with the Front-Cover Texts being "A GNU Manual," and with the Back-Cover Texts as in (a) below.
(a) FSF の 裏 表 紙 に は 、 以 下 の 文 章 が 記 述 さ れ て い ま す : "You are free to copy and modify this GNU Manual. Buying copies from GNU Press supports the FSF in developing GNU and promoting software freedom."