Точки наблюдения Xcode LLDB

Есть ли способ посмотреть переменную в Xcode с помощью LLDB? Или это возможно только с GDB? Я пытаюсь использовать команду watchpoint set variable, но получаю сообщение:

неверная команда "установить точку наблюдения"


person the Reverend    schedule 26.06.2012    source источник


Ответы (2)


Точки наблюдения поддерживаются для отладки iOS и Mac OS X, начиная с Xcode 4.5. Чтобы установить точку останова для переменной с именем foo, выполните

(lldb) watchpoint set variable foo

вы всегда можете использовать кратчайшее однозначное имя для команд в консоли lldb, поэтому

(lldb) w s v foo

тоже будет здесь работать.

В Xcode в окне локальных переменных вы можете щелкнуть правой кнопкой мыши / щелкнуть, удерживая клавишу Control, на переменных, и у вас будет возможность установить для нее точку наблюдения.

Текущая рука и процессор x86 поддерживают только 4 активные точки наблюдения одновременно.

person Jason Molenda    schedule 17.10.2012
comment
Спасибо, что сообщили нам, что они были активированы. Я проверил XCode 4.5, и он работает! - person the Reverend; 17.10.2012
comment
и где можно увидеть эти наблюдаемые переменные? - person Tudor; 12.11.2012
comment
watch list перечислит все отслеживаемые переменные. См. help watch для других поддерживаемых подкоманд. - person Jason Molenda; 12.11.2012

Попробуйте использовать

frame variable -w

вместо. Команда «watchpoint set» находится в ветке разработки lldb и, скорее всего, войдет в будущую версию Xcode.

Например:

frame variable -w write myvar

EDIT: синтаксис watch set variable, упомянутый в исходном сообщении, теперь поддерживается в lldb в XCode 4.4 и выше.

person leecbaker    schedule 10.07.2012
comment
Почтение, включающее формат watch set var -w write global_var: lldb.llvm.org/lldb-gdb.html - person bshirley; 02.10.2012