<div>Hi,</div><div><br></div><div>I'm trying to do remote debugging with lldb, but I keep running into problems.</div><div><br></div><div>How should I do it?</div><div><br></div><div>I tried running "debugserver localhost:42000" and then, on the lldb client:</div>
<div><br></div><div>platform select (remote-macosx | remote-gdb-server?) + platform connect?</div><div>platform select … + process connect?</div><div><br></div><div>Should I have the executable on both machines? Do I just need it on the lldb machine and lldb sends it to the server? Do I just need it on the server?</div>
<div><br></div><div>That's good for the most basic case: client and server on Mac OS X.</div><div><br></div><div>Now, what about some different combinations?</div><div>debugserver on macosx + client on linux?</div><div>
debugserver on Linux + client on macosx?</div><div>gdbserver on "any" machine + client on macosx? Which programs would be supported?</div><div><br></div><div>I would suppose you need the plugins for the combinations you want to use, but with the gdb-remote stuff, I'm getting confused.</div>
<div><br></div><div>In lldb_private::Initialize(), we initialize several plugins, depending on the operating system. I'm supposing the DynamicLoader and Process plugins (along with some others) are only needed when running as host, otherwise, we couldn't, on Linux, debug a FreeBSD or Mac OS X target (since their initialization gets ifdeffed out).</div>
<div><br></div><div>I saw that, on Mac OS X, lldb spawns a debugserver that runs the program and they communicate using the plugin ProcessGDBRemote (another question: Why is that plug-in only started on Mac OS X? It has to run on the host, but otherwise I didn't see much platform-specific stuff (I just skimmed the file)). Shouldn't that Process plugin be also used with a PlatformRemoteGDBServer?</div>
<div><br></div><div>Thanks, in advance, for the reply,nbsp; Filipe</div><div><br></div>