* * *

Author Topic: FPDebug, Duby etc.  (Read 1190 times)


  • Global Moderator
  • Hero Member
  • *****
  • Posts: 3373
  • I like bugs.
FPDebug, Duby etc.
« on: November 02, 2017, 10:31:12 am »
I moved this from the "What are we missing?" thread.

I've been on vacation for the past 3 weeks and did some bit of a progress for duby.

It's not much to see, yet.
But I did successfully implemented expression valuation, like:
Code: [Select]
where calc() and calc2() are functions in the debugged process, using different calling conventions. (the evaluation is made based on the debugging info available). Needless to say, the expression valuation is expecting pascal syntax.

The biggest challenge was/is actually to create Lazarus-IDE plugin.
The lack of documentation for that is being addressed though.
(please don't point me to GDB plugin... it's 12K lines of code...)
But at this point duby as Lazarus plugin is capable to run,pause and stop the debugged process. Stop at break points, stop and remove them.
Currently working on disassembling (providing some small notes for TCapstone project). And later adding expression valuation support for the plugin as well.

Lot more work to be ahead.
@skalogryz, is it possible you don't know about the current development of FPDebug and its related packages in Lazarus sources?
Well, I don't know much about them either but I really think the debugger effort should be focused into one project.
Joost and Martin have contributed there. Why did they not improve your Duby project directly? I don't know, I believe they have some reason.
@Martin, Joost, comments?

Another complication is that Graeme has another fork also named "FPDebug" but different from "FPDebug" in Lazarus sources. It is now dormant, too.

These are the packages under Lazarus components:
fpdebug 0.0:
Author: Lazarus Team
Description / Abstract: A set of helperclasses for implementing a debugger.

Based on:
1) FPDebug by Marc Weustink
2) Duby by Dmitry Boyarintsev

Extended by Martin Friebe
License: All Files except those listed below: GPL

File(s) with other licenses (see also header in file(s):

* macho.pas
  This file contains Original Code and/or Modifications of Original Code  as defined in and that are subject to the Apple Public Source License Version 2.0 (the 'License'). You may not use this file except in compliance with the License. Please obtain a copy of the License at   http://www.opensource.apple.com/apsl/ and read it before using this  file.
  (Any modifications/translations of this file are from duby)

Filename:  /usr/SW/lazarus_trunk/components/fpdebug/fpdebug.lpk
Current state: not installed, RunAndDesignTime

lazdebuggerfp 0.0:
Author: Joost van der Sluis
Description / Abstract: This package adds a stand-alone debugger to the IDE. For now it is only a proof-of-concept. Evaluating data is not (yet) possible.
License: GPLv2
Filename:  /usr/SW/lazarus_trunk/components/lazdebuggers/lazdebuggerfp/lazdebuggerfp.lpk
Current state: not installed, RunAndDesignTime

lazdebuggerfpdserver 0.1:
Author: Joost van der Sluis
Description / Abstract: Use fpdserver to debug applications
Filename:  /usr/SW/lazarus_trunk/components/lazdebuggers/lazdebuggerfpdserver/lazdebuggerfpdserver.lpk
Current state: not installed, DesignTime

lazdebuggerfpgdbmi 0.1:
Author: Martin Friebe
Description / Abstract: Debugger for the Lazarus IDE
A debugger based on FPDebug and GDB
License: GPL
Filename:  /usr/SW/lazarus_trunk/components/lazdebuggers/lazdebuggerfpgdbmi/lazdebuggerfpgdbmi.lpk
Current state: not installed, RunAndDesignTime


  • Global Moderator
  • Hero Member
  • *****
  • Posts: 3373
  • I like bugs.
Re: FPDebug, Duby etc.
« Reply #1 on: December 09, 2017, 05:48:52 pm »
I had already forgotten this post. Now Thaddy mentioned it in another thread.
No comments from skalogryz, Martin or Joost?



Get Lazarus at SourceForge.net. Fast, secure and Free Open Source software downloads Open Hub project report for Lazarus