& quot; команда точки останова add & quot; не работает в командной строке LLDB в Android Studio

Насколько я знаю, lldb поддерживает автоматическое выполнение команд при достижении точки останова (аналогично gdb«s commands).

Руководство говорит, что это должно работать так:

(lldb) breakpoint command add 1.1
Enter your debugger command(s). Type 'DONE' to end.
> bt
> DONE

Он должен выводить обратную трассировку каждый раз, когда достигается точка останова 1.1. Я пытаюсь сделать то же самое в консоли LLDB в Android Studio 2.1.2 с NDK версии 12b:

(lldb) breakpoint list
...
8: file = '/home/user/src_file.cpp', line = 2683, exact_match = 0, locations = 1, resolved = 1, hit count = 1
8.1: where = libdroid_shared.so`(anonymous namespace)::onDbgThreadResume() + 20 at src_file.cpp:2683, address = 0x0000007f9cad6740, resolved, hit count = 1

(lldb) breakpoint command add 8.1
(lldb) breakpoint command add 8.1
(lldb)

Как видите, отладчик не предлагает мне вводить команды. Когда я нажимаю Enter после breakpoint commmand add строка выводит только пустую строку, а командной строки нет.

Я пробовал как 32-, так и 64-битные отладчики с разными файлами, точками останова и приложениями, но это не работает.
То же самое с gdb«s commands работает отлично.

Мои вопросы:

  • Это известная ошибка в Android Studio или lldb, есть ли обходной путь?
  • Может быть, это просто ошибка в Android Studio UI? Могу ли я использовать lldb без Android Studio, только интерфейс командной строки? Как я могу это сделать?

0

Решение

Я не очень разбираюсь в Android Studio, но похоже, что это ошибка в Android Studio или уровень эмуляции lldb «MI» в обработке входных обратных вызовов lldb (в данном случае тот, который запрашивает фактические команды).

Если это то, что есть, вы можете обойти это, поместив свои команды в файл, а затем используя опцию ввода «одна строка», например:

(lldb) br com add -o "com source /tmp/lldb.cmds"
1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector