mirror of
https://github.com/EiffelSoftware/eiffel-org.git
synced 2025-12-07 07:12:25 +01:00
Author:jfiat
Date:2011-05-20T11:31:40.000000Z git-svn-id: https://svn.eiffel.com/eiffel-org/trunk@905 abb3cda0-5349-4a8f-a601-0c33ac3a8c38
This commit is contained in:
@@ -0,0 +1,29 @@
|
||||
[[Property:title|Attach application]]
|
||||
[[Property:link_title|]]
|
||||
[[Property:weight|0]]
|
||||
[[Property:uuid|d5b8d2b3-9489-a631-81ee-f25d6c309215]]
|
||||
Usually when you want to debug an application, you launch it from EiffelStudio and the debugger is automatically attached to the execution of the application.
|
||||
However for specific needs (such as server development), you might want to start the execution outside EiffelStudio, and then attach the EiffelStudio's debugger to it.
|
||||
|
||||
Since 6.8, there is an experimental solution based on socket connection.
|
||||
You start your application, and this one will wait for the debugger to connect.
|
||||
|
||||
There are some obvious requirements such as
|
||||
* The application should be a workbench application
|
||||
* EiffelStudio should be open on the project which was used to compile the workbench.
|
||||
|
||||
So how to achieve that?
|
||||
* On the application side, you will need to provide at some time a port number, and when the application will wait for the debugger.
|
||||
|
||||
On the application side, you can do that either
|
||||
* by setting '''ISE_DBG_PORTNUM''' environment variable to a specific port number (by default 1050)
|
||||
* by calling <eiffel>{RT_DEBUGGER}.rt_workbench_wait_for_debugger (a_port_number: INTEGER)</eiffel> from the program itself
|
||||
|
||||
Then from EiffelStudio, menu "Execution>Attach Debuggee" and provide the same port number.
|
||||
(note that you can add the associated command to the execution tool bar).
|
||||
|
||||
At this point EiffelStudio is able to debug the application as if it was launched by Eiffel Studio itself.
|
||||
|
||||
{{note| This solution is still experimental, it can (and will) be improved in the future}}
|
||||
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
[[Property:title|Detach application]]
|
||||
[[Property:weight|0]]
|
||||
[[Property:uuid|5da63d87-107d-338e-de64-1a52912fd00c]]
|
||||
When you are executing an Eiffel application within EiffelStudio (i.e you are debugging it), you may want to detach the debugger from this application without killing the application. The "Detach Execution" command will address this need.
|
||||
|
||||
|
||||
You can find it under menu <code>Execution->Detach Execution</code>, and you can also add it to the execution tool bar items.
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -17,7 +17,9 @@ There are several ways to launch the application you are working on from EiffelS
|
||||
|
||||
Once the application is launched in debug mode, you can [[Pause an application|pause]] [[Image:debug-pause-icon]] it at any time to see its current state or you can [[Stop a debugged application|stop its execution]] [[Image:debug-stop-icon]] completely.
|
||||
|
||||
All these commands are accessible either through the '''debug''' menu, or through the '''project''' toolbar.
|
||||
* In addition, you can also [[detach application|detach an application]] being debugged, and there is an experimental solution to [[attach application|attach]] the debugger to the Eiffel application launched outside EiffelStudio.
|
||||
|
||||
All these commands are accessible either through the '''Execution''' menu, or through the '''project''' toolbar.
|
||||
|
||||
{{seealso| The Eiffel [[Compiler|Compiler]] }}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user