Ooh, I'd definitely be interested. Sounds like a very fun project.
I'll have to familiarize myself with the internals (I'm currently learning the API, which seems to resemble the internals moderately well...) I'll start educating myself tomorrow morning when I wake. -Russell On Mon, Apr 3, 2017, 9:00 PM Zachary Turner <ztur...@google.com> wrote: > As the person who added most of the support for debugging Windows > executables, I can tell you that I never tested a MinGW executable (nor was > it one of my original goals). It doesn't entirely surprise me that things > are behaving this way, but I'm not sure what the exact cause would be off > the top of my head. MinGW executables and msvc Win32 executables use an > entirely different ABI, so I would exepct the non lldb-server path to be a > little wonky since I always assumed MSVC ABI in my implementation. On the > other hand, as you said there is no lldb-server. > > If you're interested in digging into the source code and trying to add a > patch for MinGW support, I can give you some pointers. > > On Mon, Apr 3, 2017 at 3:41 PM Russell Greene via lldb-dev < > lldb-dev@lists.llvm.org> wrote: > > Also, forgot to include this part: it's pretty important: > > PS C:\Users\IEUser> C:\msys64\mingw64\bin\lldb.exe > C:\msys64\home\IEUser\chigraph\build\bin\chi.exe > (lldb) target create > "C:\\msys64\\home\\IEUser\\chigraph\\build\\bin\\chi.exe" > Current executable set to > 'C:\msys64\home\IEUser\chigraph\build\bin\chi.exe' (x86_64). > (lldb) target list > Current targets: > * target #0: C:\msys64\home\IEUser\chigraph\build\bin\chi.exe ( > arch=x86_64-pc-windows-msvc, platform=host ) > (lldb) r > error: process launch failed: unable to locate lldb-server > (lldb) > > > -Russell > > On Mon, Apr 3, 2017 at 4:39 PM Russell Greene <russellgree...@gmail.com> > wrote: > > Interesting: > > > PS C:\Users\IEUser> C:\msys64\mingw64\bin\lldb.exe > C:\msys64\home\IEUser\chigraph\build\bin\chi.exe > (lldb) target create > "C:\\msys64\\home\\IEUser\\chigraph\\build\\bin\\chi.exe" > Current executable set to > 'C:\msys64\home\IEUser\chigraph\build\bin\chi.exe' (x86_64). > (lldb) target list > Current targets: > * target #0: C:\msys64\home\IEUser\chigraph\build\bin\chi.exe ( > arch=x86_64-pc-windows-msvc, platform=host ) > (lldb) > > > -Russell > > > On Mon, Apr 3, 2017 at 10:54 AM Ted Woodward <ted.woodw...@codeaurora.org> > wrote: > > I wonder if lldb isn’t using the windows platform. In the lldb command > line, load up your target, then type “target list”. I’d like to see what > plaform it chose, and what the triple is. > > > > -- > > Qualcomm Innovation Center, Inc. > > The Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a > Linux Foundation Collaborative Project > > > > *From:* Russell Greene [mailto:russellgree...@gmail.com] > *Sent:* Monday, April 03, 2017 11:24 AM > *To:* Ted Woodward <ted.woodw...@codeaurora.org>; LLDB < > lldb-dev@lists.llvm.org> > *Subject:* Re: [lldb-dev] Using LLDB API on windows > > > > That makes sense, and I'm sure it works great when using MSVC as a > compiler, but I think LLDB recognizes mingw as a unix compiler and tries to > do GDBRemoteCommunication::StartDebugserverProcess when it should be doing > PlatformWindows::DebugProcess. > > > > Not sure though. All I know is when I try to do a SBTarget::Launch on > windows under mingw (msys2) it says cannot find lldb-server... > > > > -Russell > > > > On Mon, Apr 3, 2017 at 9:32 AM Ted Woodward <ted.woodw...@codeaurora.org> > wrote: > > Hi Russell, > > > > I assume you mean for SBTarget::Launch or LaunchSimple to launch a Windows > application. > > > > The short answer is, this already works. > > > > SBTarget::Launch calls Target::Launch, which calls DebugProcess in the > relevant platform. For cases where we use lldb-server, the platform make a > call that eventually gets to > GDBRemoteCommunication::StartDebugserverProcess to start up lldb-server. > On Windows, PlatformWindows::DebugProcess calls Process::Launch, which (on > Windows) will do the correct thing to start up and connect to a Windows > process. > > > > See PlatformWindows::DebugProcess in > source\Plugins\Platform\Windows\PlatformWindows.cpp and > ProcessLauncherWIndows::LaunchProcess in > source\Host\windows\ProcessLauncherWindows.cpp . > > > > Ted > > > > -- > > Qualcomm Innovation Center, Inc. > > The Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a > Linux Foundation Collaborative Project > > > > *From:* lldb-dev [mailto:lldb-dev-boun...@lists.llvm.org] *On Behalf Of > *Russell > Greene via lldb-dev > *Sent:* Sunday, April 02, 2017 4:38 PM > *To:* lldb-dev@lists.llvm.org > *Subject:* [lldb-dev] Using LLDB API on windows > > > > Hey so I am developing a project using LLDB as a debugger and am looking > to make it cross-platform. > > > > As I see it, the LLDB API boots up an instance of lldb-server, but > lldb-server isn't available on windows. Is there a way to use the LLDB C++ > API on windows? > > > > On the status page <https://lldb.llvm.org/status.html> I see the lldb > commandline tool is OK for windows, which uses the LLDB API, how is this > achieved? > > > > -Russell > > _______________________________________________ > lldb-dev mailing list > lldb-dev@lists.llvm.org > http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev > >
_______________________________________________ lldb-dev mailing list lldb-dev@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev