LINUX.ORG.RU

gdb readline C_r не работает или не так готовлю?

 ,


0

1

Вопрос конечно по использованию софта, но в dev ибо по идее пользователи сего инструмента ошиваются в основном тут.

Уточню сабж:

  • gdb собран с readline, и даже хоткеи пашут
  • набираю комманду (пусть будет help)
  • жму C_r, появляется окно ввода
  • пишу help, ничего не находится, ничего не комплитается

чяднт?

Так и задуманно и readline там только для навигации и что бы лясопеды на выброс подготовить? Или что то не пашет конкретно у меня?

В lldb, почему-то решили не заморачиваться, и сделали свой велосипед для реализации сей фичи.

Ну и в догонку бонусный вопрос - если таки можно работать как с history в bash, то куда будет сохраняться выхлоп, по дефолту? А как наконфигурять?

Upd:

gdb --version
GNU gdb (GDB) Fedora 7.9.1-20.fc22
Copyright (C) 2015 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>

...


★★★★★

Последнее исправление: pon4ik (всего исправлений: 2)

В lldb, почему-то решили не заморачиваться, и сделали свой велосипед для реализации сей фичи.

Во-первых, они в принципе велосипедисты. Во-вторых, у них алергия на свободный софт и лицензии, а readline это именно GPL (а не LGPL).

если таки можно работать как с history в bash, то куда будет сохраняться выхлоп, по дефолту? А как наконфигурять?

$ head -4 ~/.gdbinit 
# save command history between sessions
set history filename ~/.gdb_history
set history save
set history size unlimited

пишу help, ничего не находится, ничего не комплитается
чяднт?
Так и задуманно и readline там только для навигации и что бы лясопеды на выброс подготовить? Или что то не пашет конкретно у меня?

Думаю уже понятно, что история по умолчанию не сохраняется, т.е. пустая, соответственно, дополнять нечего.

xaizek ★★★★★
()
Ответ на: комментарий от pon4ik

Могу предположить, что нету:

set history filename ~/.gdb_history
Тогда .gdb_history будет создаваться в текущем каталоге (если $GDBHISTFILE не определено).

Справка тут. Вроде, ничего дополнительно делать не надо. Можно ещё проверить состояние этих опций после запуска.

xaizek ★★★★★
()
Ответ на: комментарий от xaizek

Есть, прямо твой конфиг и попробовал :)

Не работает и в федорке (франкенштейн, но по большей части - 22) и в ubuntu 14.04.

Ещё добавил set history expansion

Файлик истории создаётся, но, туда ничего не пишется.

Либо это бага в свежих версиях gdb (старые я не пробовал), либо чего то таки не хватает в конфиге.

pon4ik ★★★★★
() автор топика
Ответ на: комментарий от pon4ik

Сократил конфиг до четырёх строк и удалил файл истории, он создался заново и история работает.

Настройки внутри gdb:

$ gdb
(gdb) show history
expansion:  History expansion on command input is off.
filename:  The filename in which to record the command history is "/home/xaizek/.gdb_history".
remove-duplicates:  The number of history entries to look back at for duplicates is 0.
save:  Saving of the history record on exit is on.
size:  The size of the command history is unlimited.

У меня

GNU gdb (GDB) 7.11

xaizek ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.