README.md 1.3 KB
Newer Older
D
Derek Parker 已提交
1 2
# DBG

D
Derek Parker 已提交
3
### What is DBG?
D
Derek Parker 已提交
4

D
Derek Parker 已提交
5
DBG is a Go debugger, written primarily in Go. It really needs a new name.
D
Derek Parker 已提交
6

D
Derek Parker 已提交
7 8
### Building

D
Derek Parker 已提交
9
Currently, DBG requires the following [patch](https://codereview.appspot.com/117280043/), however this change is vendored until Go 1.4 lands.
D
Derek Parker 已提交
10

D
Derek Parker 已提交
11 12 13
### Features

* Attach to (trace) a running process
D
Derek Parker 已提交
14
* Ability to launch a process and begin debugging it
D
Derek Parker 已提交
15 16 17 18 19 20 21
* Set breakpoints
* Single step through a process
* Next through a process (step over / out of subroutines)
* Never retype commands, empty line defaults to previous command

### Usage

D
Derek Parker 已提交
22 23 24 25
The debugger can be launched in two ways:

* Provide the name of the program you want to debug, and the debugger will launch it for you.
	
D
Derek Parker 已提交
26
	```
D
Derek Parker 已提交
27
	$ dbg -proc path/to/program
D
Derek Parker 已提交
28
	```
D
Derek Parker 已提交
29 30 31

* Provide the pid of a currently running process, and the debugger will attach and begin the session.

D
Derek Parker 已提交
32
	```
D
Derek Parker 已提交
33
	$ sudo dbg -pid 44839
D
Derek Parker 已提交
34
	```
D
Derek Parker 已提交
35 36 37

Once inside a debugging session, the following commands may be used:

D
Derek Parker 已提交
38
* `break` - Set break point at the entry point of a function, or at a specific file/line. Example: `break foo.go:13`.
D
Derek Parker 已提交
39

D
Derek Parker 已提交
40
* `step` - Single step through program.
D
Derek Parker 已提交
41

D
Derek Parker 已提交
42
* `next` - Step over to next source line.
D
Derek Parker 已提交
43 44 45

### Upcoming features

D
Derek Parker 已提交
46
* Handle Gos multithreaded nature better
D
Derek Parker 已提交
47 48 49
* In-scope variable evaluation
* In-scope variable setting
* Readline integration
D
Derek Parker 已提交
50
* Support for OS X
D
Derek Parker 已提交
51 52

### License
D
Derek Parker 已提交
53 54

MIT