May 24, 2016

On 17.05.2016 10:06, Vadim Lopatin wrote:
> Hello,
>
> I'm working on GDB/MI compatible interface for Mago debugger on Windows.
>
> GDB/MI is line based machine interface for debugger. IDEs are using GDB
> via this interface.
>
> GDB/MI docs: https://sourceware.org/gdb/onlinedocs/gdb/GDB_002fMI.html
>
> Project page (mago fork) https://github.com/buggins/mago
>
> Currently mago-mi supports subset of GDB commands enough for current
> DlangIDE functionality.
>
> Tested on DMD generated 32bit executables.
>
> See readme details list of implemented commands:
> https://github.com/buggins/mago/tree/master/MagoMI/mago-mi
>
> Difference from baseline https://github.com/rainers/mago files are minimal:
> - Static linking for MagoNatDE and MagoNatEE
> - Disabled some Mago debug logging
>
> Building mago-mi from source is easy. I've tried MS Visual Studio 2013
> and 2015. Don't forget to edit properties in mago/PropSheets. Buld
> mago-mi project.
>
> Since DlangIDE v0.6.1, it includes prebuilt mago-mi.exe (it will be
> copied into bin directory by dub build) and default Debugger settings
> are changed from gdb to mago-mi by default on Windows. If you already
> used DlangIDE on your computer, check Edit/Preferences/Debugger setting
> - change to "mago-mi" if "gdb" is specified.
>
> If you want to try mago-mi and DlangIDE which is using it, you can
> download binaries from
> https://sourceforge.net/projects/crengine/files/DlangUI/dlangide-v061-magomi-v010-x86.zip/download
> (or just sync to latest dlangide and use `dub run`). Bundle includes
> DlangIDE, mago-mi, dub, and sample workspaces (helloworld and tetris).
> Download size is 5.4Mb (seems small enough for IDE+debugger).
>
> I hope my work will be useful for other IDE developers who is targeting
> on Windows.
> (Any IDE which uses gdb/mi interface)
> I tried gdb and lldb-mi before, but did not managed to find working
> compiler + debugger configuration. (Best combination was gdb + gdc, but
> it was showing global variables instead of locals. For lldb-mi, I
> haven't managed to find compiler which produces compatible debug info).
>
> Best regards,
>     Vadim


Impressive work!

I'm currently working on improving integration in VS. For this, I also needed a static library version of MagoNatDE. I just pushed my changes, I hope it doesn't break anything for you.

If you want to stay in sync, please consider a PR with your changes to mago.

May 24, 2016
On Tuesday, 24 May 2016 at 06:34:04 UTC, Rainer Schuetze wrote:
>
>
> On 17.05.2016 10:06, Vadim Lopatin wrote:
>> Hello,
>>
>> I'm working on GDB/MI compatible interface for Mago debugger on Windows.

> Impressive work!
>
> I'm currently working on improving integration in VS. For this, I also needed a static library version of MagoNatDE. I just pushed my changes, I hope it doesn't break anything for you.
>
> If you want to stay in sync, please consider a PR with your changes to mago.

Actually, I would prefer to use static versions of all Mago libraries.
I really like that statically linked mago-mi.exe is only 1.5Mb in Release build.
If it become possible to link MagoNatDE/MagoNatEE statically, I would merge my changes to upstream.

May 24, 2016

On 24.05.2016 08:47, Vadim Lopatin wrote:
> On Tuesday, 24 May 2016 at 06:34:04 UTC, Rainer Schuetze wrote:
>>
>> If you want to stay in sync, please consider a PR with your changes to
>> mago.
>
> Actually, I would prefer to use static versions of all Mago libraries.
> I really like that statically linked mago-mi.exe is only 1.5Mb in
> Release build.
> If it become possible to link MagoNatDE/MagoNatEE statically, I would
> merge my changes to upstream.
>

MagoNatEE has been a static lib so far, but it could be eliminated long term, as it just a very thin layer to convert std::wstring to BSTR for some function arguments.

MagoNatDE now has configurations "Debug/Release StaticDE" which are also solution configurations. Anything else falls back to Debug/Release, but can link the static library within these solution configurations. See the MagoNatCC project.
May 24, 2016
On Tuesday, 24 May 2016 at 06:56:26 UTC, Rainer Schuetze wrote:
>
>
> On 24.05.2016 08:47, Vadim Lopatin wrote:
>> On Tuesday, 24 May 2016 at 06:34:04 UTC, Rainer Schuetze wrote:
>>>
>>> If you want to stay in sync, please consider a PR with your changes to
>>> mago.
>>
>> Actually, I would prefer to use static versions of all Mago libraries.
>> I really like that statically linked mago-mi.exe is only 1.5Mb in
>> Release build.
>> If it become possible to link MagoNatDE/MagoNatEE statically, I would
>> merge my changes to upstream.
>>
>
> MagoNatEE has been a static lib so far, but it could be eliminated long term, as it just a very thin layer to convert std::wstring to BSTR for some function arguments.
>
> MagoNatDE now has configurations "Debug/Release StaticDE" which are also solution configurations. Anything else falls back to Debug/Release, but can link the static library within these solution configurations. See the MagoNatCC project.

Merged upstream.
Sent pull request.

June 01, 2016
On 24/05/2016 07:34, Rainer Schuetze wrote:
>
>
> On 17.05.2016 10:06, Vadim Lopatin wrote:
>> Hello,
>>
>> I'm working on GDB/MI compatible interface for Mago debugger on Windows.
>>
>> GDB/MI is line based machine interface for debugger. IDEs are using GDB
>> via this interface.
>>
>> GDB/MI docs: https://sourceware.org/gdb/onlinedocs/gdb/GDB_002fMI.html
>>
>> Project page (mago fork) https://github.com/buggins/mago
>>
>> Currently mago-mi supports subset of GDB commands enough for current
>> DlangIDE functionality.
>>
>> Tested on DMD generated 32bit executables.
>>
>> See readme details list of implemented commands:
>> https://github.com/buggins/mago/tree/master/MagoMI/mago-mi
>>
>> Difference from baseline https://github.com/rainers/mago files are
>> minimal:
>> - Static linking for MagoNatDE and MagoNatEE
>> - Disabled some Mago debug logging
>>
>> Building mago-mi from source is easy. I've tried MS Visual Studio 2013
>> and 2015. Don't forget to edit properties in mago/PropSheets. Buld
>> mago-mi project.
>>
>> Since DlangIDE v0.6.1, it includes prebuilt mago-mi.exe (it will be
>> copied into bin directory by dub build) and default Debugger settings
>> are changed from gdb to mago-mi by default on Windows. If you already
>> used DlangIDE on your computer, check Edit/Preferences/Debugger setting
>> - change to "mago-mi" if "gdb" is specified.
>>
>> If you want to try mago-mi and DlangIDE which is using it, you can
>> download binaries from
>> https://sourceforge.net/projects/crengine/files/DlangUI/dlangide-v061-magomi-v010-x86.zip/download
>>
>> (or just sync to latest dlangide and use `dub run`). Bundle includes
>> DlangIDE, mago-mi, dub, and sample workspaces (helloworld and tetris).
>> Download size is 5.4Mb (seems small enough for IDE+debugger).
>>
>> I hope my work will be useful for other IDE developers who is targeting
>> on Windows.
>> (Any IDE which uses gdb/mi interface)
>> I tried gdb and lldb-mi before, but did not managed to find working
>> compiler + debugger configuration. (Best combination was gdb + gdc, but
>> it was showing global variables instead of locals. For lldb-mi, I
>> haven't managed to find compiler which produces compatible debug info).
>>
>> Best regards,
>>     Vadim
>
>
> Impressive work!
>
> I'm currently working on improving integration in VS. For this, I also
> needed a static library version of MagoNatDE. I just pushed my changes,
> I hope it doesn't break anything for you.
>
> If you want to stay in sync, please consider a PR with your changes to
> mago.
>

Can Mago debug programs with debug information in the COFF format? If not, any chance this could be added, or is it a big task?

-- 
Bruno Medeiros
https://twitter.com/brunodomedeiros
June 01, 2016
On Wednesday, 1 June 2016 at 15:20:15 UTC, Bruno Medeiros wrote:
>>
>> Impressive work!
>>
>> I'm currently working on improving integration in VS. For this, I also
>> needed a static library version of MagoNatDE. I just pushed my changes,
>> I hope it doesn't break anything for you.
>>
>> If you want to stay in sync, please consider a PR with your changes to
>> mago.
>>
>
> Can Mago debug programs with debug information in the COFF format? If not, any chance this could be added, or is it a big task?

I didn't check but it should work.


1 2
Next ›   Last »