[lldb-dev] Remote Debugging on Linux

Vince Harron vharron at google.com
Thu Feb 26 20:06:31 PST 2015


We are focusing on cross compiling the 32bit LLDB server from x86_64.  We
will eventually need to compile the 32bit host binaries on Windows but we
aren't focused on 32 but Mac/Linux hosts.  Please feel free to get this
working.

Vince
 On Feb 25, 2015 9:00 AM, "Abhishek Aggarwal" <abhiinnitald at gmail.com>
wrote:

> Hi All
>
> Thanks a lot for all the inputs.
>
> @Greg: I could make it work using the lldb-platform. I had checked out
> source code of LLDB on Feb 16 and had built (Debug+Asserts) it on Fedora 20
> system (x86_64). I will like to make few comments which are inlined.
>
> @Vince: Are you building LLDB for x86_32 Linux ? I tried to build it
> (Debug build) for such a system and it fails during linking process because
> of lack of memory.
> In order to bring up x86_32 support, are you following a different
> approach ? I read the thread initiated by you "Transitioning to Linux local
> debugging via lldb-gdbserver" . Are you using this approach?
>
>
> On Tue, Feb 24, 2015 at 11:34 PM, Vince Harron <vharron at google.com> wrote:
>
>> It's only really tested on x86_64->x86_64.  We are bringing up x86_32 and
>> arm32/64 now-ish, MIPS soon to follow.
>>
>> Please let us know if you hit any problems!
>>
>>
>> On Tue, Feb 24, 2015 at 3:52 PM, Greg Clayton <gclayton at apple.com> wrote:
>>
>>> The first way to do this is to use the lldb-platform to allow you to
>>> view and launch processes on the remote host.
>>>
>>> On the remote machine launch lldb-server:
>>>
>>
>
>> remote.foo.com% lldb-server platform --listen=2000 --stay-alive
>>>
>>>
> I had to replace "lldb-server platform" by "lldb-platform" because right
> now, building lldb doesn't generate any binary with name lldb-server.
>
>
>> Then on your host machine:
>>>
>>> host.bar.com% lldb
>>> (lldb) platform select remote-linux
>>> (lldb) platform connect connect://remote.foo.com:2000
>>>
>>> Now you have a live connection to a platform server on the remote host
>>> so you can list existing processes:
>>>
>>> (lldb) platform process list
>>> (lldb) platform process attach --pid ...
>>>
>>> Or you can launch:
>>>
>>> (lldb) file /path/to/binary
>>> (lldb) process launch -- arg1 arg2
>>>
>>> The platform will launch a lldb-server to debug your programs on the
>>> other system.
>>>
>>>
> This thing worked pretty well.
>
>
>>
>>>
>>> The other is to just directly debug a process. In this case we don't go
>>> through the platform, we just start lldb-server on
>>>
>>> remote.foo.com% lldb-server gdbserver host.bar.com:2000 -- arg1 arg2
>>>
>>>
> Again , I replaced "lldb-server gdbserver" by lldb-gdbserver.
>
>
>> Then attach to it:
>>>
>>> host.bar.com% lldb
>>> (lldb) file /path/to/binary
>>> (lldb) process connect connect://remote.foo.com:2000
>>>
>>>
> While running process connect command, I got the following error
>        "error: remote connections are not supported"
>
>
>
>> Now you will be stopped at the program entry point and ready to debug a
>>> single process.
>>>
>>> All of this is of course using the top of tree SVN sources. It will
>>> change a bit if you are using older sources.
>>>
>>
> The above error might be because my source code is old. But I am not sure
> given that the source code is 9 days old.
>
>
>>
>>> Greg
>>>
>>>
>>> > On Feb 24, 2015, at 6:09 AM, Abhishek Aggarwal <abhiinnitald at gmail.com>
>>> wrote:
>>> >
>>> > Hi All
>>> >
>>> > I am new to LLDB. I want to remotely debug some applications. Both the
>>> host and target OS is Linux.
>>> >
>>> > I went through few discussions in this list regarding remote debugging
>>> but I am still unclear about how to do it.
>>> > I could figure out from the discussions that there are 2 ways to do
>>> remote debugging: lldb-platform and lldb-gdbserver
>>> >
>>> > I don't know which one of them is fully functional for Linux. I would
>>> highly appreciate some comments here.
>>> >
>>> >
>>> > Thanks
>>> > Abhiinnit
>>> > _______________________________________________
>>> > lldb-dev mailing list
>>> > lldb-dev at cs.uiuc.edu
>>> > http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev
>>>
>>>
>>> _______________________________________________
>>> lldb-dev mailing list
>>> lldb-dev at cs.uiuc.edu
>>> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev
>>>
>>
>>
>>
>> --
>>
>> Vince Harron | Technical Lead Manager | vharron at google.com | 858-442-0868
>>
>
> Thanks
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/lldb-dev/attachments/20150226/4e10f7bc/attachment.html>


More information about the lldb-dev mailing list