我目前没有个人电脑。我有两个根设备Arm64主机设备与Debian和设备要调试,其中包含lldb服务器二进制armv7。我正在尝试使用lldb远程调试我的android设备。我从ndroid ndk24中提取了ndk24二进制文件,并将其放入/data/local/tmp中。在Debian上安装了Sid,apt安装了lldb。
然后,我使用带有linux的主机对客户端设备(一个带有lldb-server)进行了热点。
我在服务器设备上运行的命令
./data/local/tmp/lldb-server platform --listen "*:2000" --server使用netstat进行检查,并将lldb服务器绑定到所有地址(0.0.0.0:2000)。
在debian sid终端的主机(客户端debian sid)设备上,我运行了:
apt install lldb
lldb
platform select remote-android
platform connect connect://192.168.201.132:2000然后我得到了error failed connect port。
然而,使用Gdb和gdbserver,一切都很完美。我尝试过在lldb上安装debian buster,但是结果是相同的,甚至在主机上运行lldb-server二进制文件(使用debian sid的设备),但是结果是相同的。现在我被困在这里了。我该怎么解决这个问题?
我们会非常感谢你的帮助。谢谢。
发布于 2022-06-12 12:51:22
我不知道为什么,但是lldb-server platform命令坏了(在我的例子中是mabe),应该像这样使用lldb-server gdbserver:
在lldb-server gdbserver命令中,存根不允许来自其他ips的连接,除非它绑定的连接是这样做的:
iptables -I INPUT -t nat -p tcp -d 192.168.43.1 --dport 2000 -j SNAT --to-source 192.168.43.1:50000
./data/local/tmp/lldb-server g 192.168.43.1:2000关于lldb客户端do
gdb-remote 192.168.43.1:2000然后进行正常的远程调试。
https://stackoverflow.com/questions/72553030
复制相似问题