If you're still looking for it, we at Xamarin have recently created some C# bindings for LLDB. We also built a proof of concept native debugger addin for Xamarin Studio.
It's all open source, the bindings themselves are available here: https://github.com/tritao/LLDBSharp Let me know if you find them useful for need some help in generating the bindings for other ABIs (Windows). On Tue, Apr 7, 2015 at 6:19 PM, Colin Riley <co...@codeplay.com> wrote: > I think that's what I used. Hence why I want lldb C# bindings! But yeah. > Horridly underdocumented. > ------------------------------ > From: Zachary Turner <ztur...@google.com> > Sent: 07/04/2015 18:10 > To: Colin Riley <co...@codeplay.com>; lldb-dev@cs.uiuc.edu > Subject: Re: [lldb-dev] [LLVMdev] PDB support in LLVM > > Btw the python tools project doesn't use Dbgeng extensibility model, it's > a newer richer extensibility framework that is even less documented (most > people probably wouldn't even know it exists) but much more powerful. And > it's all in managed code, so you get the c# stuff for free. > > But still, 4-5 weeks seems very aggressive > On Tue, Apr 7, 2015 at 9:48 AM Colin Riley <co...@codeplay.com> wrote: > >> You could try extending the codeview and then relying on the ms linker >> to emit a pdb from it (last time I checked it converts on the fly - this >> may have changed recently, and what it converts may not be fully featured). >> >> The Debug Engine extensibility for visual studio is, as Zach says, not >> well documented at all. Despite that, in the past I have had LLDB chatting >> in a limited way to visual studio. It was incredibly messy, and the way I >> chose to do it was go from Visual Studio -> c# -> c++/CLI -> C++ lldb api. >> Don't do it that way if you attempt it: Create lldb C# bindings instead and >> go that direction. I've been looking at that lately but it's a side project >> so cant be relied on if you need it quickly. >> >> As for the time frame, 4-5 weeks isn't going to get far given the lack of >> documentation. The debug engine samples don't go far enough in terms of >> requiring a native C++ environment. >> >> Colin >> >> >> On 07/04/2015 17:25, Zachary Turner wrote: >> >> It sounds like if you have a time frame of 4-5 weeks, you've got a tall >> order cut out for yourself. I don't want to say impossible, but... that's >> pretty rough. >> >> I think you've got two options: >> 1) Try to figure out how to emit PDB. The format is undocumented, so >> you're kind of on your own here. >> 2) Try to figure out how to get Visual Studio to understand DWARF. >> Visual Studio has a reasonably rich extensibility model which is also not >> very well documented, so you're probably on your own here as well. You may >> want to have a look at PythonTools for Visual Studio >> <https://github.com/Microsoft/PTVS>. It's entirely open source and adds >> Python debugging to Visual Studio. Obviously you don't need to be able to >> debug Python, but it's the best source of documentation I know of for >> extending Visual Studio in this kind of way so maybe it will help. If you >> end up doing this, it would be great if you could try to upstream it back >> to LLDB. Visual Studio integration with LLDB would be nice to have. >> >> On Mon, Apr 6, 2015 at 5:02 PM Rohan Bajaj <rohanbaja...@gmail.com> >> wrote: >> >>> Moving to lldb-dev per suggestion. >>> >>> Using Visual Studio is only criteria for us. It could be DWARF or PDB. >>> >>> But I need to implement this soon (4-5 weeks from now). What do you >>> recommend? >>> >>> Zachary do you also suggest using LLDB on Windows? >>> >>> >>> On Mon, Apr 6, 2015 at 4:35 PM, Zachary Turner <ztur...@google.com> >>> wrote: >>> >>>> >>>> >>>> On Mon, Apr 6, 2015 at 4:16 PM Chandler Carruth <chandl...@google.com> >>>> wrote: >>>> >>>>> On Mon, Apr 6, 2015 at 3:46 PM Rohan Bajaj <rohanbaja...@gmail.com> >>>>> wrote: >>>>> >>>>>> Is making PDB files for corresponding IR supported in LLVM latest >>>>>> version? >>>>>> >>>>> >>>>> Not today. >>>>> >>>>> >>>>>> >>>>>> After some searching I see llvm-pdbdump, but I want to annotate the >>>>>> IR with debug information so that when I write bitcode it has pdb >>>>>> information. >>>>>> >>>>>> I've heard of CodeView, but it seems to be only for line >>>>>> information. I want variable values also. >>>>>> >>>>>> I would be ok to use DWARF if Visual Studio could understand it >>>>>> using LLDB but I don't know how to do that or if it is support. >>>>>> >>>>> >>>>> Zach (CC-ed) and others are actively working on making LLDB work >>>>> well on Windows, including reading DWARF debug information on Windows and >>>>> potentially integration with Visual Studio (although I think that is >>>>> further away at the moment). However, further discussion might be better >>>>> on >>>>> the LLDB mailing lists. >>>>> >>>> >>>> It's worth pointing out that CodeView is **not** only for line >>>> information. It's for everything. It's just that LLVM currently only >>>> understands a subset of CodeView record types related to line information. >>>> >>>> >>> >> >> _______________________________________________ >> lldb-dev mailing >> listlldb-...@cs.uiuc.eduhttp://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev >> >> >> -- >> - Colin Riley >> Senior Director, >> Parallel/Graphics Debugger Systems >> >> _______________________________________________ >> lldb-dev mailing list >> lldb-dev@cs.uiuc.edu >> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev >> > > _______________________________________________ > lldb-dev mailing list > lldb-dev@cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev > > -- João Matos
_______________________________________________ lldb-dev mailing list lldb-dev@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev