Thread overview
Dexed can be used to debug program that are not written in D
Aug 27, 2021
Basile B.
Sep 01, 2021
Imperatorn
Sep 06, 2021
Basile B.
August 27, 2021

Select a custom executable, that's been compiled with dwarf info (e.g -g).
this custom executable has not to be related to the focused project.

it even has not to be written in D. For example here I debug an obscure program written using an obscure home-made language

(first time using images since cybershadow added md support so better res here as I dont know how to make a clickable thumbnail)

as long as dwarf info are there this should work.

Breakpoints will have for effect to load the source file. If the source file is loaded in dexed before debugging and breakpoints are put before pressing the power button, they will be handled.

Signals will be handled too. they give a dialog on encounter. It proposes to cancel the break (i.e continue) or accept it to do things such as: add more bp, evaluate expressions, change the CPU register values, etc.

(note: LINUX ONLY)

September 01, 2021

On Friday, 27 August 2021 at 17:34:34 UTC, Basile B. wrote:

>

Select a custom executable, that's been compiled with dwarf info (e.g -g).
this custom executable has not to be related to the focused project.

[...]

Cool. Great job

September 06, 2021

On Wednesday, 1 September 2021 at 17:08:30 UTC, Imperatorn wrote:

>

On Friday, 27 August 2021 at 17:34:34 UTC, Basile B. wrote:

>

Select a custom executable, that's been compiled with dwarf info (e.g -g).
this custom executable has not to be related to the focused project.

[...]

Cool. Great job

Lazarus debugger can do that too.

  1. Execute > Parameters > Host application
  2. in the field set the custom app
  3. run

this works because in theory you can debug a dll written in ObjFPC but that will be used by a "foreign" program. The feature is not explicit but that just works ;)

And Qt creator of course allows the same

using Debug > Start Debugging > Debug An External Application.

In fact resricting a GDB gui to a single language makes no sense.

  1. The source language does not matter or it is automatically selected
    (GDB only knows a few variation: C C++ Pascal Fortran etc.)
  2. it's dwarf in all cases...