问题
I'm trying to do reverse execution in GDB, specifically doing target record
after running my program in gdb as per the instructions here, and triggering the following error:
Process record: the current architecture doesn't support record function.
This seems to be the same issue discussed here but was never resolved. Here's my gdb version info:
alexcannon$ gdb -version
GNU gdb (GDB) 7.6
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-apple-darwin12.5.0".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Thanks in advance for any help.
回答1:
From documentation:
Presently, only certain target debugging environments will support reverse debugging. Those targets currently include:
- Native i386-linux ('target record')
- Native amd64-linux ('target record')
- Several remote targets, including:
- moxie-elf simulator
- Simics
- VMware Workstation 7.0
- the SID simulator (xstormy16 architecture)
- chronicle-gdbserver using valgrind
- UndoDB
Your target: x86_64-apple-darwin12
is none of the above.
Sorry, not implemented :-(
来源:https://stackoverflow.com/questions/20365117/gdb-error-process-record-the-current-architecture-doesnt-support-record-func