sirnewton01 / godbg Goto Github PK
View Code? Open in Web Editor NEWWeb-based gdb front-end application
License: BSD 2-Clause "Simplified" License
Web-based gdb front-end application
License: BSD 2-Clause "Simplified" License
Hello,
I'd love to have a graphical Go debugger but till now I could not find a way to use it properly. Actually, I get a runtime error index out of range
on my application startup. Here is the logs :
panic: runtime error: index out of range
goroutine 5 [running]:
github.com/sirnewton01/gdblib.func·002()
/home/blackrush/Workspace/GoProjects/src/github.com/sirnewton01/gdblib/gdblib.go:185 +0xe3a
created by github.com/sirnewton01/gdblib.NewGDB
/home/blackrush/Workspace/GoProjects/src/github.com/sirnewton01/gdblib/gdblib.go:268 +0x3c0
goroutine 1 [syscall]:
syscall.Syscall6()
/usr/local/go/src/pkg/syscall/asm_linux_amd64.s:41 +0x5
syscall.wait4(0x542d, 0xc200155680, 0x0, 0xc20010cb40, 0x100000001, ...)
/usr/local/go/src/pkg/syscall/zerrors_linux_amd64.go:1640 +0x7b
syscall.Wait4(0x542d, 0x7ffad95f1b7c, 0x0, 0xc20010cb40, 0x0, ...)
/usr/local/go/src/pkg/syscall/syscall_linux.go:222 +0x6c
os.(*Process).wait(0xc200110500, 0x0, 0x0, 0x0)
/usr/local/go/src/pkg/os/exec_unix.go:22 +0xea
os.(*Process).Wait(0xc200110500, 0x7, 0x0, 0x0)
/usr/local/go/src/pkg/os/doc.go:43 +0x25
os/exec.(*Cmd).Wait(0xc2000d1640, 0x0, 0x0)
/usr/local/go/src/pkg/os/exec/exec.go:310 +0x197
github.com/sirnewton01/gdblib.(*GDB).Wait(0xc2000e1b60, 0x0, 0x0)
/home/blackrush/Workspace/GoProjects/src/github.com/sirnewton01/gdblib/gdblib.go:282 +0x29
main.main()
/home/blackrush/Workspace/GoProjects/src/github.com/sirnewton01/godbg/godbg.go:261 +0xa9c
goroutine 2 [syscall]:
goroutine 6 [select]:
github.com/sirnewton01/gdblib.func·001()
/home/blackrush/Workspace/GoProjects/src/github.com/sirnewton01/gdblib/gdblib.go:123 +0x50c
created by github.com/sirnewton01/gdblib.NewGDB
/home/blackrush/Workspace/GoProjects/src/github.com/sirnewton01/gdblib/gdblib.go:269 +0x3d2
I'm running on Fedora 19 x86_64 with yum installed GDB and Go 1.1.1.
I have my GOPATH set to something like
export GOPATH=/foo/go-ext:/bar/go-dev
so I can keep my go get
third party libraries separate from my development code
godbg doesn't handle this, crashes when trying to find bundles
Think it needs to take the first part of GOPATH, or provide option to pass it in as argument
It's hard to use this name when people knows the name of the debugger: gdb (Gnu DeBugger)
Could you rename the project?
2021/02/21 09:57:38 Please set the GOPATH that includes the godbg project and re-
When you write a variable (i.e. the field of a struct) it is showed its value, but after of continue with the execution (through of Next, Step, Continue) that value is lost and you have to write it again to be showed.
It would be better that once it is written a new variable to be showed, it follows being showed after.
I've got a panic at trying to use gogdb with a test:
go build -gcflags '-N -l'
go test -c
godbg foo.test
panic: runtime error: invalid memory address or nil pointer dereference
[signal 0xb code=0x1 addr=0x0 pc=0x4bd8e8]
goroutine 6 [running]:
os.(*File).readdirnames(0x0, 0xffffffffffffffff, 0x0, 0x0, 0x0, ...)
/usr/local/go/src/pkg/os/dir_unix.go:20 +0x68
os.(*File).Readdirnames(0x0, 0xffffffffffffffff, 0x0, 0x0, 0x0, ...)
/usr/local/go/src/pkg/os/doc.go:125 +0x61
main.func·004()
/usr/local/code-go/src/github.com/sirnewton01/godbg/godbg.go:134 +0xb4
created by main.main
/usr/local/code-go/src/github.com/sirnewton01/godbg/godbg.go:225 +0x816
goroutine 1 [chan receive]:
github.com/sirnewton01/gdblib.(*GDB).ExecArgs(0xc2000e1a10, 0x6e9460, 0x0, 0x6e90c0, 0x1, ...)
/usr/local/code-go/src/github.com/sirnewton01/gdblib/exec.go:46 +0x120
main.main()
/usr/local/code-go/src/github.com/sirnewton01/godbg/godbg.go:237 +0x91f
goroutine 2 [syscall]:
goroutine 4 [syscall]:
syscall.Syscall()
/usr/local/go/src/pkg/syscall/asm_linux_amd64.s:16 +0x5
syscall.read(0x5, 0xc2000f5000, 0x1000, 0x1000, 0x7f495d5f85f0, ...)
/usr/local/go/src/pkg/syscall/zerrors_linux_amd64.go:2337 +0x70
syscall.Read(0x5, 0xc2000f5000, 0x1000, 0x1000, 0x19, ...)
/usr/local/go/src/pkg/syscall/syscall_unix.go:132 +0x5a
os.(*File).read(0xc200000268, 0xc2000f5000, 0x1000, 0x1000, 0xa0, ...)
/usr/local/go/src/pkg/os/file_unix.go:174 +0x60
os.(*File).Read(0xc200000268, 0xc2000f5000, 0x1000, 0x1000, 0x6cd920, ...)
/usr/local/go/src/pkg/os/file.go:95 +0x96
bufio.(*Reader).fill(0xc2000da4e0)
/usr/local/go/src/pkg/bufio/bufio.go:79 +0x10c
bufio.(*Reader).ReadSlice(0xc2000da4e0, 0xc2000da40a, 0x0, 0x0, 0x0, ...)
/usr/local/go/src/pkg/bufio/bufio.go:262 +0x202
bufio.(*Reader).ReadLine(0xc2000da4e0, 0x0, 0x0, 0x0, 0xc200000200, ...)
/usr/local/go/src/pkg/bufio/bufio.go:293 +0x61
github.com/sirnewton01/gdblib.func·002()
/usr/local/code-go/src/github.com/sirnewton01/gdblib/gdblib.go:176 +0x16e
created by github.com/sirnewton01/gdblib.NewGDB
/usr/local/code-go/src/github.com/sirnewton01/gdblib/gdblib.go:268 +0x3c0
goroutine 5 [runnable]:
github.com/sirnewton01/gdblib.func·001()
/usr/local/code-go/src/github.com/sirnewton01/gdblib/gdblib.go:123 +0x50c
created by github.com/sirnewton01/gdblib.NewGDB
/usr/local/code-go/src/github.com/sirnewton01/gdblib/gdblib.go:269 +0x3d2
goroutine 7 [runnable]:
main.func·005()
/usr/local/code-go/src/github.com/sirnewton01/godbg/godbg.go:227
created by main.main
/usr/local/code-go/src/github.com/sirnewton01/godbg/godbg.go:234 +0x849
System:
GNU gdb (GDB) 7.5.91.20130417-cvs-ubuntu
go version go1.1.2 linux/amd64
At starting, it is shows the window of variables, but the first thing that you are going to do is to set a breakpoint so that window could be showed at the first.
Imports from code.google.com are deprecated, and will soon stop working
For some reason standard error is not showing up in the godbg console.
As a warning to anyone checking this repo out, If you want to run the code, consider the version with #15.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.