Сценарии GDB - выполнять команду, только если не отлаживать основной файл

Я добавляю некоторые функции, которые я считаю полезными для моего сценария запуска GDB. Некоторые из команд запуска применяются только к "живым" целям или имеют компоненты, которые имеют смысл только для "живых" целей. Я хотел бы иметь возможность проверить наличие (или отсутствие) основного файла и пропустить или изменить эти команды в зависимости от ситуации.

Я посмотрел в Python API, но не смог найти ничего, что бы указывало на то, является ли подчиненный файл core или живая программа. Я в порядке с решением для сценариев, которое работает либо в самом GDB, либо в интерфейсе сценариев Python GDB.

2 ответа

Не похоже, что есть способ сделать это.

Я ожидаю, что атрибут на gdb.Inferior, но нет ни одного.

Подать запрос на добавление функции в GDB bugzilla.

info proc statusвозвращается "unable to handle request"для основных файлов, тогда как для живого процесса он возвращает несколько строк, первая из которых выглядит так: "process 1234".

Вы можете запустить эту команду и сравнить ее первую строку вывода с этой строкой, используя execute_output()отсюда: https://github.com/crossbowerbt/GDB-Python-Utils/blob/master/gdb_utils.py

Другие вопросы по тегам