I have a memory bug in a very complex C++ program. It's intermittent, so rr seems like it would really help to track it down.
So I installed rr on my RHEL 8 box. My program is build with -g -O0, and works with gdb correctly. At least, if I interrupt the process I can see the stack as expected. (The memory problem rarely manifests under gdb.)
So I ran:
$ rr record myprog <myargs>
rr: Saving execution to trace directory `/home/leek2/.local/share/rr/myprog-6
...
Assertion `0' failed.
Aborted
----
$ rr replay
Reading symbols from /home/leek2/.local/share/rr/myprog-6/mmap_clone_3_myprog.
..done.
Really redefine built-in command "restart"? (y or n) [answered Y; input not from
terminal]
Remote debugging using
127.0.0.1:2208Reading symbols from /lib64/ld-linux-x86-64.so.2...(no debugging symbols found).
..done.
0x00007f9424c16fa0 in _start () from /lib64/ld-linux-x86-64.so.2
Missing separate debuginfos, use: yum debuginfo-install glibc-2.28-151.el8.x86_6
4
(rr) where
#0 0x00007f9424c16fa0 in _start () from /lib64/ld-linux-x86-64.so.2
#1 0x0000000000000018 in ?? ()
#2 0x00007ffcec0c15d2 in ?? ()
#3 0x00007ffcec0c15da in ?? ()
#4 0x00007ffcec0c15ea in ?? ()
#5 0x00007ffcec0c161a in ?? ()
#6 0x00007ffcec0c1648 in ?? ()
#7 0x00007ffcec0c164b in ?? ()
-------------------------------------------
As I said, this '??' stuff doesn't happen with gdb. I ran with rr 5.4.0 installed from the redhat yum repos, and I built my own rr 5.5.0. Both exhibit this problem. Does anyone know what might cause it?
Thanks,
Jim