lldb从ssh会话附加到OS X上的进程

bra*_*che 7 lldb

当我进入OS X时,如何将lldb附加到正在运行的进程?我无法从终端窗口调试此特定应用程序,因为更改窗口将更改我正在尝试调试的某些UI状态.

当我从ssh会话中附加lldb时,它说"附加失败:丢失连接".

编辑:这不是断断续续的ssh.我没有与ssh断开连接,只是在我进入ssh会话时lldb不会附加.

Jim*_*ham 10

在OS X上进行调试的安全策略要求主控制台上的管理员用户进行身份验证以允许在该计算机上进行调试.远程无法做到这一点是故意的.一种方法是启动Xcode并调试你正在使用的机器上的东西(无关紧要).那将是一个"你想在这台机器上打开调试"对话框,管理员用户必须对其进行身份验证.

您还可以通过运行该工具启用调试:

 > /usr/sbin/DevToolsSecurity --enable
Run Code Online (Sandbox Code Playgroud)

但同样,这将建立一个GUI确认对话框,因此您必须有权访问控制台进行身份验证.

也可以手动编辑目标系统上的安全策略,不需要身份验证进行调试,但我只知道这是可能的,而不是如何做...

  • 在执行了"sudo dscl.sundnd/Groups/_developer GroupMembership <username>"然后运行您提供的命令之后,我再次进行了测试,一切都运行良好.谢谢! (2认同)