[fpc-devel] In FPC written FPC Debugger

Daniël Mantione daniel.mantione at freepascal.org
Thu Feb 21 21:37:59 CET 2008

Op Thu, 21 Feb 2008, schreef Helmut Hartl:

> Hi,
> When using Freepascal for various projects, tests and platforms, i tried
> to identify what makes productivity bottlenecks for me and my team.
> We currently mainly do daemon console apps with Delphi and Lazarus as
> IDE for linux,
> arm projects on NLSU2, and several WinCE Tests also performed well.
> One of the main problems we face is the debugger gdb, wich makes us less
> productive.
> (unhandy, no real good pascal support)

You are right, debugging is the weak point of FPC and this will not 
improve as long as we are using gdb.

> So i am thinking about a freepascal debugger written in freepascal,
> taking advantage of
> the freepascal code/structures itself. Features should include a clean
> interface, remote debugging ability
> via net/udp (thinking about a rdp/vnc like server to control the
> debugger) and or serial console and the ability
> to integrate it with a nice gui. (and other Features like Delphi's
> debugger).
> The advantage i see is that it should be buildable with fpc only, thus
> working on all supported platforms from scratch,
> maybe even suitable for mini OS Developments for embedded devices.

One platform that would benefit is Win64. Debugging is currently not 
possible on Win64, because no gdb or even a GNU compiler exists for Win64.

> I am currently trying to study feasibility of such a project, and making
> myself familiar with debugging techniques and
> the DWARF(3) format.
> I have some general questions to the fpc team:
> What do you think about the idea ?

This discussion takes place in the fpc team from to time. It is clear we 
will need our own debugger, even though not everyone likes to maintain a 
debugger for its platform.

The FPC coders have to do lists to keep them busy until well in the next 
decade. If you want to write a debugger, I consider that welcome.


More information about the fpc-devel mailing list