This is the mail archive of the
gdb@sourceware.org
mailing list for the GDB project.
Re: A question about gdb script
- From: Michael Snyder <msnyder at vmware dot com>
- To: Hui Zhu <teawater at gmail dot com>
- Cc: "gdb at sourceware dot org" <gdb at sourceware dot org>
- Date: Wed, 25 Nov 2009 11:15:28 -0800
- Subject: Re: A question about gdb script
- References: <daef60380911250042o45462083xf478c0b384f79715@mail.gmail.com>
Hui Zhu wrote:
1. If I want get the gdb_record.xxx file of each record cycle. It's
still hard to me. Because if I add "record save" to commands, each
time it will save record entry to same file.
Does gdb have some way to handle it? like:
$a=1
record save $a
$a++
If you look at cmd_record_save, you see it has (char *args).
GDB will pass "$a" as "args", so at that point you have the
opportunity to say, eg. "if (args[0] == '$') then do something".
One possibility would be to create your default name, eg.
gdb_record.12345, and then append $a making gdb_record.12345.1
That's the quick and dirty way. Something more elegant might
be better.
2. Sometime, I want just record a function, I want:
b functon_name
commands
silent
record
finish
#Maybe we can record save in this line, this is first question.
record stop
end
But when I really do it. I found that gdb stop running after finish.
That is unfortunately a long-standing gdb "limitation" (I mean ,
known bug). It is so old that it is not likely to be fixed soon.