Good morning, I am trying to use the Valgrind debugger to step through a program.
My valgrind command line is valgrind -tool memcheck --leak-check=full --db-enable=yes ./MatchUpAcurate.exe.
I am using valgrind-3.5.0 on Centos Linux release 5.5 with gdb version 7,0.1-23.el5_5.2.
I enter Yes when valgrind asks the question Attach to Debugger. Then, the valgrind debugger returns with: 4428: return new tuple2<int,A>(2, i++, p->next());
When I try to use the gdb step or continue command, valgrind says
[New Thread 0x410fd10 (LWP 6548] Cannot find user-level thread for LWP 6551: generic error.
When I try to use valgrind --single-step=yes
debugger option on the valgrind command-line, valgriind says Bad option aborting
.
Could any valgrind users show me how to step through C++ source code or continue through a program? Thank you.
You can also get vgdb in the 3.7.0 release. From the release notes:
There's more info in the valgrind online manual.
I asked the valgrind developers how to create a valgrind debugger. Here is what they said;
Download the 3.6.0 source files from the valgrind website.
Then you have to apply the patch which is in the bug 214909.
Once properly compiled, you launch your application like this:
and then in another window:
Do not start an external gdbserver : what the patch does is to integrate a gdbserver inside valgrind. This gdbserver integrated inside valgrind is activated by the --vgdb=yes.