blob: 0bed384f9d484299d8e8c12e7422d61cfb87e71e [file] [log] [blame]
The CDT Stand-alone Debugger brings up an minimal Eclipse instance which has all that
is needed of the CDT plug-ins to debug a C/C++ executable. Build is not supported.
Editing is allowed, but you will need to rebuild outside the Stand-alone Debugger for
those changes to manifest in your debugging session.
To install the Stand-alone debugger locally in your $HOME directory, run the install.sh
script found in the scripts sub-directory of the plugins directory in your Eclipse installation:
./install.sh
The install script will create a cdtdebugger directory in your $HOME directory. This
directory will contain a config.ini file, a dev.properties file, and a cdtdebug.sh script.
The cdtdebug.sh script will start the debugger from the command-line. The cdtdebug.sh script
does not have to be located in the cdtdebugger directory and can be moved if you prefer.
The script takes a few options which are mentioned below:
-data : workspace to use for your Eclipse session if you do not want the default
$HOME/workspace-cdtdebug
-consoleLog : if you want error messages reported directly to the command console
-a [pid] : specify attaching to an existing executable running on system. If no pid is
specified, a dialog will be brought up to allow you to select an executable
from the list of existing processes. The same dialog will be brought up if
the specified pid is invalid. The pid is not used for a remote debugging
session triggered by the -r option described below.
-b $PATH : path to build log for an executable. This will be used to figure out
include paths and compilation flags. This option assumes you will
be using the -e option described below.
-c $CPATH : path to core-file. This option must precede a -e option to specify an
executable.
-e $PATH [args...] : path to your executable to debug plus any optional command line
arguments to pass to main(). This option must be last and should
not precede any other arguments as they will be treated as arguments
to main.
-r $ADDR:$PORT : remote debugging towards hostname or IP address $ADDR and IP port $PORT.
The gdbserver must be running on the target and waiting for a connection.
This option can be used at the same time as the -a option. In such a case
a Remote-Attach session will be started allowing the user to attach to
different processes on the remote target. The user will need to press
the 'connect' button or use the context-menu of the Debug view to choose
one or more processes to attach to. In this case the -e flag is optional,
and when not specified, a dialog will be used instead to prompt for the
binary's location. This option, when used without -a, will trigger a
manual Remote debugging session to a single, pre-selected binary, and
therefore requires the use of the -e option to specify the location of
the binary on the local machine that matches the one on the remote target.
If no -a or -e option is specified, the last executable debugged via -e will be offered for
debugging. Otherwise, if this is the first time, a dialog will be presented to enter
an executable, build log, and program arguments.
e.g. ~/cdtdebugger/cdtdebug.sh -b ~/build.log -e ~/myproject/bin/a.out arg1 arg2
The cdtdebug.sh script that is found in the plug-in can also be run directly, but cannot
be moved. The one installed in the cdtdebugger directory on the other hand, can be moved.