Cha*_*pta 4 debugging cocoa-touch gdb ios lldb
我正在尝试在设备上调试我的应用程序时设置观察点.我无法在gdb或lldb上设置它.
在lldb上,我没有watchpoint set在调试器中看到该选项,即使该页面提到它存在.当我尝试运行时watchpoint set,lldb告诉我该命令无效.
在gdb上,我确实设置了watchpoint(使用watch var),但是当我尝试继续执行时,我得到了这个:
Can't set hardware watchpoints without the 'Z2' (write-watchpoint) packet.
Run Code Online (Sandbox Code Playgroud)
我在gdb窗口中看不到其他输出,也不认为我可以与它进行交互.此应用程序也保持挂起.
我在OS X Lion上使用Xcode 4.3.2(4E2002).我尝试在iOS 5.1和iOS 5.0.1的设备上设置观察点,但两者都遇到同样的问题.
在Xcode 4.5之前,使用lldb或gdb进行iOS开发不支持观察点.
使用Xcode 4.5,它们支持使用lldb进行iOS和Mac OS X调试.
在Xcode中,在locals窗口中,您可以右键单击/按住Control键并单击某个变量,并且可以选择在其上设置观察点.从调试器控制台,要在名为foo的变量上添加观察点,您可以这样做
(lldb) watchpoint set variable foo
Run Code Online (Sandbox Code Playgroud)
最短的明确命令在lldb中始终有效,所以这会做同样的事情,
(lldb) w s v foo
Run Code Online (Sandbox Code Playgroud)
当前的x86和arm cpus仅支持同时设置4个观察点.