在OSX 10.5上使用Xcode 3.1; 是否可以将(调试器)附加到正在运行的远程进程?
我知道,这是可能的启动和调试远程过程(如解释在这里),但是这将是巨大的,如果我能找到一种方法来连接到一个已经运行的远程过程...
编辑添加:谢谢.我已经向Apple提交了一份错误报告.如果/当我收到他们的回复时,将更新此问题.
在XCode中没有很好的gui,但你可以这样做:
通过远程调试从XCode启动程序的第二个实例,
使用控制台中的GDB attach命令
分步说明:
按照Apple的说明设置远程调试:
在远程控制台上找出程序运行实例的进程ID:
ssh"remotemachine"'ps -x -w -w'| grep"AppName"
(你也可以使用ARD和ActivityMonitor)
给你的app main添加一个断点,然后从Debugger启动第二个实例(在远程盒子上)
在GDB控制台(运行/控制台菜单)中输入:
附加进程ID
现在,您已将XCode附加到正在运行的进程中.您现在可以使用图形调试器.
(在早期的XCode中,没有用于附加到本地进程的GUI,所以这个技巧/黑客就是解决方案......)