使用lldb / Xcode进行远程调试

时间:2015-11-05 18:43:33

标签: macos debugging remote-debugging lldb

我有2个站点,一个用于开发,另一个用于测试。我希望能够在测试站上运行和调试在发布模式下构建的目标(代码被剥离)。

由于安全原因可能无法将代码复制到测试站,因此我尝试了远程调试,如以下链接所述 - http://lldb.llvm.org/remote.html

由于调试的两端都运行OS X,因此设置说明指定我的本地(开发)站应该运行'lldb-server'和'debugserver',而远程(测试)端应该运行'platform'。< / p>

不幸的是,我在Xcode包中找不到所有这些工具。我也尝试下载lldb源代码并自己创建那些可执行文件,但我仍然缺少lldb-server目标。

我希望我有一些关于如何从A到Z正确进行lldb远程调试的清晰而全面的指南。

2 个答案:

答案 0 :(得分:8)

  1. 确保两台计算机上都安装了Xcode。 (不同的版本都可以!)

  2. 在远程计算机上(运行可执行文件):

    1. 启动您要调试的应用
    2. 启动debugserver,附加到您的应用,并侦听来自其他Mac的连接: /Applications/Xcode.app/Contents/SharedFrameworks/LLDB.framework/Versions/A/Resources/debugserver development-mac.local:16000 --attach="Photo Booth"
  3. 在开发机器上:

    1. 输入lldb
    2. 启动lldb
    3. 连接到调试服务器: process connect connect://test-mac.local:16000
  4. 在测试计算机上,您现在应该看到消息Waiting for debugger instructions for process 0。片刻之后,(lldb)提示符应出现在您的开发计算机上,您可以正常开始调试。

    不幸的是,我不确定如何从Xcode连接。

答案 1 :(得分:2)

请向Apple提供反馈,以便在此处更新其文档 - &gt; https://developer.apple.com/library/mac/documentation/Darwin/Conceptual/KEXTConcept/KEXTConceptDebugger/debug_tutorial.html

与此同时,我通过应用程序反汇编使用hopperapp获得更多的milage。 http://hopperapp.com/有一个免费试用 - 它有一个远程调试器。