Для того, чтобы сделать затмение отладки с симпатичной печатью я последовал ответ, который был дан на этот вопрос:
Ubuntu 14.04, gcc 4.8.4: gdb pretty printing doesn't work because of Python issue
Однако я вставил команду внутри ~/.gdbinit, и это не сработало. Запустив .gdbinit с sh -x, я получил это сообщение Синтаксическая ошибка: «(« неожиданно. Это, по-видимому, ошибка bash в корреляции с командой python. Каждое решение, которое я искал и пытался, не устранило проблему (например, использовать одиночные кавычки или без них или использовать #!/usr/bin/python или #!/usr/bin/env python в начале файла). У кого-нибудь есть идея, как с этим справиться?Ubuntu 16.04, GCC 6: GDB 7,11 довольно печать в Eclipse, не работает
1
A
ответ
1
Чтобы включить довольно печать на убунту 16.04 (GCC по умолчанию, GDB) требуется скрипт:
python
sys.path.insert(0, '/usr/share/gcc-5/python')
from libstdcxx.v6.printers import register_libstdcxx_printers
register_libstdcxx_printers (None)
end
Вы, вероятно, понадобится GCC-6 там
.После этого вам нужно ввести полный путь к приведенному выше сценарию в поле вкладки отладчика отладки конфигурации eclipse «командный файл gdb» и применить это изменение.
После этого можно запустить эту конфигурацию отладки и изучить контейнеры в представлении переменных.
Для справки, here - это CDT FAQ, объясняющий это.
+0
Большое спасибо. Это сработало. – dk13
Почему вы решили запустить .gdbinit с помощью sh -x? Не делай этого. – ks1322
@ ks1322 Я просто запускаю его таким образом, чтобы увидеть, что с командой что-то не так. Тот же результат я получил, когда я запускаю команду в терминале. – dk13
.gdbinit не может управляться оболочкой. Он содержит команды gdb. Можете ли вы добавить свой .gdbinit в свой вопрос? У вас установлен Python? И btw, для Ubuntu 16.04 соответствующий путь был бы/usr/share/gcc-5/python. – dbrank0