2

I am trying to switch from vim to evil mode and got very far. The last thing what is missing is debugging with "gdb". I want to be equally productive as with clewn in vim (this means source level debugging, not a bare command line interface). So I tried with gud-many-windows.

But with gud I experience lots of issues, which make it totally unusable for me. The most prominent is, that gud doesn't seem to follow jumps in other functions or other files. So if I step into function, the white indicator simply goes away. Manually invoking gud-refresh sometimes helps. But sometimes, the source also pops up in some other window then (e.g. the input/output window) or not at all. So I have to go some steps "in the dark" before gud-refresh helps again.

There are many people in the web experiencing similar problems, but there doesn't seem to be any solution (at least none, I could understand so far). In some forums it is stated, that debugging in emacs 24 is broken and I should go back to 23.

Another issue seems to be that it is totally unconfigurable. So making the input/output window disapear meant to literally copy 50 lines from the gud sources and modify them via defadvice ... What the heck?

I also tried realgud, but was not even able to invoke gdb with it. On 25.0.50 I had the same problems then with 24.

Best regards, Kilian.

1 Answer 1

1

M-x gud-gdb is fine when debugging on emacs24, this works on gdb6+

M-x gdb requires gdb7+

when debugging, you need compile your program with gcc -g -O0. I use M-x gud-gdb on both Mac/Linux without issue.

1
  • Yeah, gud-gdb might work. But not gud-many-windows via M-x gdb, as I described above. In fact, in every forum the people say, use: gud-gdb. But this has a much more spartanic interface though. As I got realgud working in the meantime, I will try to use that.
    – kilian
    Commented Nov 22, 2015 at 21:03

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.