Remote debugging C++ application with Eclipse GUI
I believe that the "C/C++ Remote Application" option uses Eclipse's RDT (Remote Development Tools) and RSE (Remote System Explorer) to connect, upload, execute, and debug the application itself. It
If all you want to do is connect to a gdbserver
, then create a "C/C++ Attach to Application" debug configuration, and under the Debugger tab, set Debugger to gdbserver.
Nvidia Nsight Eclipse edition remote debugging with C/C++ remote launch configuration
Nsight 5.0 does not support remote debugging - as this requires special cuda-gdb server software. cuda-gdbserver and Nsight EE remote debugging will be released as a part CUDA toolkit 5.5 (we demoed CUDA Toolkit 5.5 at GTC last week and we are working hard to release it as soon as possible).
Note that our remote debugger connection UI will be slightly different and will not require any Eclipse plugins installed separately.
Update: CUDA Toolkit 5.5 RC (which includes Nsight EE 5.5) is available for download for registered CUDA developers. It includes the remote debug support.
How to set up the Eclipse for remote C debugging with gdbserver?
gdbserver
needs more arguments. For example, say gdbserver localhost:1337 yourprogram yourprogramarguments
and keep it running.
Then, in Eclipse, create a new debug configuration for a "C/C++ Application". On the main tab, on the bottom, choose GDB (GSF) Remote System Process Launcher
as launcher. On the debugger tab, choose gdbserver Debugger
as the debugger. Under connection, say TCP
as connection type and give localhost:1337
as address. When you launch the configuration, you may control the remote gdb
by entering commands into the console.
How to debug a linux C++ program from Windows with Eclipse?
I suggest to install an X11 server on your Windows machine (e.g. Xming perhaps?) and to do ssh -X
with some X11 client applications (like emacs
, ddd
if needed, xterm
) on your Linux server. Don't use a complex thing like Eclipse. You could just use emacs
(remotely on the Linux server, displaying on the Windows desktop X11 server)...
Once emacs
works well (running on the remote Linux server, displaying on the Windows desktop X11 server), you can run gdb
inside it.
To get ssh -X
working, you need to configure it appropriately. Maybe you forgot that step. To test it, just use ssh -X yourlinuxhost xterm
, and work on configuration till that step works.
Of course you could also install Linux on your laptop or desktop, perhaps inside a virtual machine above your Windows.
NB. I never used Windows, but I do know that some X11 servers exist for it.
Related Topics
Unordered_Map Constructor Error (Equal_To Templated Function)
Raw Socket Promiscuous Mode Not Sniffing What I Write
Array[Byte] to Hbitmap or Cbitmap
Does the Evil Cast Get Trumped by the Evil Compiler
How to Analyze Program Running Time
For-Loop in C++ Using Double Breaking Out One Step Early, Boundary Value Not Reached
Addresses of Identical Function Template Instantiations Across Compilation Units
Extract Text from PDF Document Based on Position C++
Remove Reference in Decltype (Return T Instead of T& Where T& Is the Decltype)
C++ Cmake (Add Non-Built Files)
Linux C++: Does a Return from Main() Cause a Multithreaded App to Terminate
Execute Rdmsr and Wrmsr Instructions from C/C++ Code
C++ Access to SQL Server from Linux
Adding Header and .Cpp Files in a Project Built with Cmake