a particular tool) requires a bit more trickery but can be achieved
without too much problem by following these steps:
-(1) Set VALGRIND_LAUNCHER to <prefix>/bin/valgrind:
+(1) Set VALGRIND_LAUNCHER to point to the valgrind executable. Eg:
- export VALGRIND_LAUNCHER=/usr/local/bin/valgrind
+ export VALGRIND_LAUNCHER=/usr/local/bin/valgrind
-(2) Run "gdb <prefix>/lib/valgrind/<platform>/<tool>":
+ or for an uninstalled version in a source directory $DIR:
- gdb /usr/local/lib/valgrind/ppc32-linux/lackey
+ export VALGRIND_LAUNCHER=$DIR/coregrind/valgrind
+
+(2) Run gdb on the tool executable. Eg:
+
+ gdb /usr/local/lib/valgrind/ppc32-linux/lackey
+
+ or
+
+ gdb $DIR/.in_place/x86-linux/memcheck
(3) Do "handle SIGSEGV SIGILL nostop noprint" in GDB to prevent GDB from
stopping on a SIGSEGV or SIGILL:
(gdb) run pwd
+Steps (1)--(3) can be put in a .gdbinit file, but any directory names must
+be fully expanded (ie. not an environment variable).
Self-hosting
~~~~~~~~~~~~