2012-06-26 45 views
21

是否有任何方法使用LLDB在Xcode中觀察變量?或者只有GDB纔有可能? 我試圖使用命令watchpoint set variable,但我得到的消息:Xcode LLDB watchpoints

無效的命令 '觀察點設置'

回答

28

從Xcode 4.5開始,iOS和Mac OS X調試支持Watchpoints。要設置一個斷點在名爲foo變量,請

(lldb) watchpoint set variable foo 

你總是可以用最短明確的名稱爲命令在LLDB控制檯,以便

(lldb) w s v foo 

也將在這裏工作。

在Xcode中,在本地窗口中,您可以右鍵單擊/控制單擊變量,然後您可以選擇在其上設置觀察點。

當前arm和x86 cpus僅支持同時處於活動狀態的4個觀察點。

+0

謝謝讓我們知道他們已被激活。我檢查了XCode 4.5,它的工作原理! –

+0

以及在哪裏可以看到這些觀察變量? – Tudorizer

+0

'watch list'將列出所有觀察到的變量。其他支持的子命令見'help watch'。 –

2

嘗試使用

frame variable -w 

代替。 'watchpoint set'命令在lldb的開發分支中,並且可能會用於未來版本的Xcode。

例如:

frame variable -w write myvar 

編輯:在原崗位提到的watch set variable語法現在支持在LLDB XCode中4.4和更大。

+0

所有這三個命令在Xcode 4.4.1上都不起作用 – darksky

+0

包含'watch set var -w write global_var'格式的敬意:http://lldb.llvm.org/lldb-gdb.html – bshirley