mac-to-mac remote debugging

There have been occasional questions about remote debugging. Unfortunately I see a couple of them which were reasonable basic questions got no answer at all. I will try this again. A couple questions had some mention of lldb server. In some cases clearly the people asking the questions already knew a bit about remote debugging. Yet I can find no documentation about it.


Does XCode or other tools that will work with XCode support debugging over the internet? If so what are the reqirements re XCode version and macOS version, whether the client and server can have unmatched versions, etc.?


My immediate need (without extra steps) is to debug a process running on Sierra (no XCode installed yet) from a development system running XCode 7.3.1 under El Capitan.


The need for remote debugging is to be able to diagnose crashes that don't happen on my development systems. There have also been questions concerning crash logs, but crash logs are of limited use unless the crash can be opened into a debugger with full ability to examine the stack and local variables.


Thanks in advance!

Post not yet marked as solved Up vote post of kkbigler Down vote post of kkbigler
3.3k views

Replies

Same question here!

Hellooooooo Apple - anybody home??

When folks talk about remote debugging they usually mean one of three things:

  • Remote debugging using Xcode (A)

  • Remove debugging using lldb and debugserver (B)

  • Remove debugging using lldb over SSH (C)

There is currently no supported way to do A (r. 7476048 ).

With regards B, it’s possible to do and you’ll find various instructions out there on the ’net. My experience, however, is that it’s not worth the effort. Given that you have to use command-line LLDB anyway, you end up with a much nicer debugging experience if you do C.

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"

You can find remote debug details in article: https://medium.com/@alkenso/remote-debug-of-macos-application-using-xcode-1d714d6314bb

… wherein step 1 is “enable an unsupported feature in Xcode”. There are pros and cons to do that. The biggest con is that, if you set up a workflow that relies on an unsupported feature, and then it goes away, you are up the proverbial creek. Personally, I stick with option C.

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"