Work on LLDB support outside GSoc

Aleix Pol aleixpol at kde.org
Mon Apr 25 23:23:57 UTC 2016


On Sat, Apr 23, 2016 at 2:46 PM, RISHABH GUPTA <rishabh9511 at gmail.com> wrote:
>
>
> On Sat, Apr 23, 2016 at 10:53 AM, Aetf <7437103 at gmail.com> wrote:
>>
>> Hi Rishabh,
>
> Hi
>>
>> I'm not sure about others, but at least my proposal for the LLDB support
>> was accepted for the GSoC.
>>
>> It seems to me that you are trying to write the whole plugin from scratch,
>
> No
>>
>> while I'm going to work on the existing code base.
>
>
> Same.  According to my findings it's mostly the same plugin so most of the
> GDB's code will be reused.
>
>> I'm not sure which one is better but I think we can work in parallel and
>> discuss all the designs/implementations about the debugger plugin. I believe
>> we can both write better code in this way. :)
>>
>> This is my first time for GSoC, so I don't know if there's any
>> policy/restrictions about this but I've seen somewhere mentioned that there
>> can be multiple efforts towards the same project. So this should not be a
>> problem.
>>
>> Unfortunately, I have to prepare for my exams for the following week so I
>> don't have time to look deeper into the code shortly, but anyway here is my
>> proposal [1], any thoughts, questions, suggestions are more than welcomed.
>> And it would be really helpful if you can post yours so we can learn from
>> each other.
>
>
> I too have practicals and exams coming up.My exams are scheduled from 10th
> to  24th may so right now I can't do much .
>
> My idea  was to make  Gdb's code generic so that both lldb and gdb can use
> it .i.e to have a single debugger module from which both gdb and lldb can be
> launched,this allows us to make use of most of the existing code.For example
> classes like CppDebuggerPlugin, DebugJob, DebugSession are not debugger
> specific and hence can be used generically .The only class I have
> encountered till now  and is debugger specific is the launcher class.We need
> to have two launcher classes(GdbLauncher and LldbLauncher) to provide users
> the option to select from lldb and gdb .
>
> I am reusing the code but I am not implementing all the functions right
> now.Only those which are needed at present are being implemented.
>
>
> I have started implementing my idea .Here is the code
> https://github.com/rish9511/kdevelop/tree/lldb/debuggers
>
> What this code does:
>
> 1.User gets the option to choose from lldb and gdb .
>
> 2.If user selects gdb to debug the program:
>   a) the output will be displayed in the debug area(with no breakpoints)
>
>   b) if user selects lldb ,the output won't be displayed .To make this work
> we need to implement the parser class.
>
>
> Regarding your proposal:
> The classes like  Debugsession ,DebugJob that you have listed as Lldb
> specific ,according to me can be used by both gdb and lldb.
>
>
> Please ask if you have any doubts or provide suggestions :)
>
>
> Cheers,
> Rishabh
>>
>> [1]:
>> https://github.com/Aetf/GSoC2016Proposals/blob/master/KDevelop-LLDB.md
>>
>> Cheers,
>>
>> Aetf
>>
>> On Fri, Apr 22, 2016, 23:21 RISHABH GUPTA <rishabh9511 at gmail.com> wrote:
>>>
>>> Hi,
>>> My proposal for LLDB support was not accepted for GSoc project .I want to
>>> know whether I can still work on it with the guy who has been selected for
>>> the project?
>>>
>>> My plan was to work on the project in any case (i.e outside gsoc or as a
>>> gsoc) but didn't know there was some other guy applying for the same
>>> project.
>>>
>>> Since I have already done some work on it and know about the project ,It
>>> would be good If I  could also work on it .
>>>
>>> Thank you:)
>>> Rishabh

Hi Rishab,
First of all, your commitment to collaborate with us is deeply
appreciated. Thanks!

I'd love to take on your offer, but considering that Aetf will be
working on it, have you considered to look into something else? For
example we really need some help with improving the clang integration
(as well as in other areas).

Please, consider it.

Happy hacking!
Aleix


More information about the KDevelop-devel mailing list