开发者

toolchain or IDE? (debugger question)

In short: What's the most efficient debugger/debugging environment for C++?

I only started development on Linux recently because I now have to do some work on a GPU server.

I've pla开发者_StackOverflow社区yed around with vim and find it quite nice with loads of plugins. I think for editing vim is way better than Visual Studio, but there's one thing it doesn't cover: debugging. I looked around and tried a few debuggers (GDB itself, pyclewn, DDD, nemiver) and none of them can provide me the efficiency that VS can.

Is there any debugger that comes close to VS's debugger? Should I use an IDE instead? IDE isn't really so convenient for me because I work on a lot of different computers, many of which are not mine and the only thing that's guaranteed to be present on those computers is SSH.

I'm willing to pay for good debuggers.


The problem with remote debugging is, that the debugger must run on the executing machine. But there is a way under linux to do it remotely with an IDE.

You could use NetBeans IDE and use this Plugin: http://plugins.netbeans.org/plugin/37426/gdbserver

The Documentation for the gdbserver could be found here: http://www.delorie.com/gnu/docs/gdb/gdbserver.1.html


Maybe Qt Creator is a good choice. Someone here said it supports remote debugging with GDB.


You can use Eclipse CDT for remote debugging over gdbserver. It is most close to VS's debugger on Linux.

Also you can use gdb in TUI mode on GPU server directly without remote debugging. TUI mode is a bit closer to VS than ordinary gdb mode. It shows you source code, breakpoints and other things interactively and works good over ssh.


From the ones named here, most are generic C debugger frontends, i.e. display e.g. C++ containers as "plain C" structures with pointers and such. Neither DDD nor gdb/TUI handle C++ in any way "specially". Some allow "pretty" display of toplevel C++ containers, usually using gdb's python based "pretty printing". VS and Qt Creator are the only ones I am aware of that go the extra mile and do it properly for nested containers.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜