mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-04-22 22:22:11 +02:00

- allow pid to be specified following -a option for Standalone debugger - if pid is specified, use it to set the ATTR_ATTACH_PROCESS_ID setting for the launch configuration - setting the pid will cause the process dialog not to appear and the debugger will attempt to debug the given process - an invalid pid will result in in the dialog being opened - the pid is not used with the -r option and is ignored - updated the README file and docs Change-Id: I5a1d39f97285ad41dcb986dfb4692f9d808bafeb
62 lines
3.7 KiB
Text
62 lines
3.7 KiB
Text
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.
|
|
|