1.1, Шарп (ok), 11:56, 05/06/2017 [ответить] [﹢﹢﹢] [ · · · ]
| –24 +/– |
Когда в нём добавят возможность ставить бряки в виде красных точек на полях? А то выглядит как какое-то старьё из 70-х.
| |
|
2.4, llolik (ok), 12:20, 05/06/2017 [^] [^^] [^^^] [ответить]
| +9 +/– |
Или это шутка, или слабо представляете, что такое gdb.
И да, так сложно сделать b <строка>|<имя функции>?
| |
2.18, freehck (ok), 17:16, 05/06/2017 [^] [^^] [^^^] [ответить]
| +2 +/– |
> Когда в нём добавят возможность ставить бряки в виде красных точек на полях?
GDB - это консольный инструмент, спроектированный так, чтобы встраивать его в IDE было удобно.
Так что если хотите бряки в виде красных точек, используйте например соответствующий режим emacs.
| |
2.25, Аноним (-), 00:49, 06/06/2017 [^] [^^] [^^^] [ответить]
| +4 +/– |
Еще надо qr-код, httpd-сервер и поддержку аккаунта в фейсбуке. А вдруг вы в gdb сидите, а тут внезапно вам захотелось сделать селфи в туалете. И тут все прямо под рукой, даже systemd использовать не надо. Крастота.
| |
|
|
2.5, llolik (ok), 12:22, 05/06/2017 [^] [^^] [^^^] [ответить]
| +/– |
> Еще бы морду к нему отдельную вне связи с IDE...
Ну мне cgdb нравится. Вполне такое минималистичное TUI.
ddd пробовал, но как-то он уж больно падуч.
| |
2.6, Ordu (ok), 13:28, 05/06/2017 [^] [^^] [^^^] [ответить]
| +/– |
Как ты себе это представляешь? Или что по твоему "морда к gdb"?
| |
|
3.7, Аноним (-), 13:33, 05/06/2017 [^] [^^] [^^^] [ответить]
| +/– |
Да хоть интерфейс на curses. Что угодно, что увеличит отношение (полезность / длительность чтения доки).
| |
|
4.8, Ordu (ok), 13:44, 05/06/2017 [^] [^^] [^^^] [ответить]
| +1 +/– |
> Да хоть интерфейс на curses. Что угодно, что увеличит отношение (полезность /
> длительность чтения доки).
Это не ответ. В том смысле, что это ответ в стиле "сделайте так, чтобы было хорошо". Но вопрос был в том, что значит "хорошо".
Чем этот интерфейс на curses будет отличаться от IDE? Почему он при этом будет проще чем запоминание команд: start, n, s, b, cont, list?
| |
|
5.9, Аноним (-), 13:55, 05/06/2017 [^] [^^] [^^^] [ответить]
| +1 +/– |
> Это не ответ. В том смысле, что это ответ в стиле "сделайте так, чтобы было хорошо". Но вопрос был в том, что значит "хорошо".
Полностью с вами согласен, в этом и сложность. Работа по созданию такого интерфейса и заключается в ответе на вопрос "что такое хорошо и как этого добиться". Но очевидно же, что можно сделать лучше чем сейчас.
> Чем этот интерфейс на curses будет отличаться от IDE?
Тем, что там нельзя редактировать код. Это не среда разработки, это среда отладки.
> Почему он при этом будет проще чем запоминание команд: start, n, s, b, cont, list?
Потому, что вместо того, чтобы вбивать команды в строку, можно будет выбрать доступное действие из списка действий. Это сделает очевидным ответ на вопрос: что же можно сделать в этом контексте.
| |
|
6.26, Ilya Indigo (ok), 17:13, 06/06/2017 [^] [^^] [^^^] [ответить]
| –2 +/– |
> Тем, что там нельзя редактировать код. Это не среда разработки, это среда отладки.
А каким образом Вы собрались отлаживать код без его редактирования?
Или Вы путаете отладку с анализом?
| |
|
7.27, Аноним (-), 20:20, 06/06/2017 [^] [^^] [^^^] [ответить]
| –1 +/– |
То есть команды типа jump, вызов функций и модификацию переменных из отладчика отменили?
| |
|
|
5.11, щи (?), 14:28, 05/06/2017 [^] [^^] [^^^] [ответить]
| +/– |
Присоединяясь к предыдущему оратору о сложности, понятное дело, что без нормального ТЗ результат известен. Как отправную точку можно взять существующие дебаггеры типа Olly. Даже если не брать, какой-то шаг к "хорошо" надо выполнить в эту сторону, само ничего не сделается.
| |
|
6.16, Ordu (ok), 16:07, 05/06/2017 [^] [^^] [^^^] [ответить]
| +1 +/– |
Я понял.
Но этого не будет. Никому это не надо. Точнее кому-то надо, но те кому надо не готовы ни платить денег за это, ни писать такое. Чтобы написать такую обвязку вокруг gdb/lldb, надо сначала потратить несколько часов и научиться пользоваться gdb или lldb. А когда научишься -- обвязки становятся не нужными.
| |
|
|
4.21, Andrey Mitrofanov (?), 19:29, 05/06/2017 [^] [^^] [^^^] [ответить]
| +/– |
> Да хоть интерфейс на curses. Что угодно, что увеличит отношение (полезность /
> длительность чтения доки).
. > / длительность чтения
Срочно воспользуйтесь отладчиком для поиска случая деления на 0 в.
| |
|
3.19, nc (ok), 18:44, 05/06/2017 [^] [^^] [^^^] [ответить]
| –4 +/– |
В Visual Studio сделано почти хорошо.
Почти - потому что и там есть недостатки. Например, нет возможности выставить точку останова по изменению памяти из контекстного меню в редакторе кода или в watch/locals или как там они называются (окна где просматриваются значения переменных).
Единственная рабочая IDE под Linux - это Qt Creator, и интерфейс к отладчику там ужасен.
Понятно что консоль сейчас это что-то вроде универсальной среды для взаимодействия между приложениями. Но пользоваться консольными отладчиками напрямую это все равно что сидеть в современное интернете через телнет вручную вбивая http запросы и в уме разбирая выдаваемый html.
| |
|
4.20, Ordu (ok), 19:18, 05/06/2017 [^] [^^] [^^^] [ответить]
| +3 +/– |
> В Visual Studio сделано почти хорошо.
> Qt Creator
Вы какие-то умные слова произносите... Я знаю первое: когда-то в давние-давние времена я видел Visual Studio 6.0. Но это было так давно, что я уже забыл, как он выглядел тогда.
> Но пользоваться консольными отладчиками напрямую это все равно что сидеть
> в современное интернете через телнет вручную вбивая http запросы и в
> уме разбирая выдаваемый html.
Если эта мысль причиняет вам страдания, то я могу вам лишь посочувствовать. Попробуйте отвлечься от неё и заняться каким-нибудь делом.
И я отмечу, сравнение некорректно: попробуйте реально сидеть в вебе через telnet, и вы поймёте разницу. Даже если вам удастся найти http-сайт, а не https, вы всё равно поймёте. Я пробовал и то, и это. Я ещё и почту через pop3 получал, а отправлял через smtp telnet'ом -- был период когда я интересовался протоколами и читал всякие rfc. И, скажу я вам, не стоит сравнивать командную строчку заточенную на то, чтобы с ней работал пользователь, со всеми этими протоколами, которые в принципе ориентированы на общение двух программ.
| |
|
5.23, nc (ok), 20:11, 05/06/2017 [^] [^^] [^^^] [ответить]
| –1 +/– |
Современные консольные программы имеют десятки разных опций и параметров. Да и самих программ сотни или тысячи. Да, командная строка все еще заточена чтобы с ней в простых (и средних - для профессионалов) случаях работал пользователь, но в наиболее сложных случаях это или скрипт, написанный один раз и тщательно проверенный и отлаженный, или все-же GUI обертка. В этом смысле командная строка заточена также как универсальное средство межпрограммного взаимодействия с сохранением "человекочитаемости", и в общем это весьма неплохо...
| |
|
6.24, Ordu (ok), 21:43, 05/06/2017 [^] [^^] [^^^] [ответить]
| +1 +/– |
> Современные консольные программы имеют десятки разных опций и параметров. Да и самих
> программ сотни или тысячи.
Не надо путать командную строчку bash и командную строчку gdb. Это две разные командные строчки созданные для разных задач. Info gdb, то есть мануал к нему, можно прочитать за два часа. Если скипать ненужные секции, то ещё быстрее. Если положить рядом с собой бумажку и выписывать на неё команды, которые кажутся полезными, то затем потребуется ещё два часа отладочной сессии для того, чтобы освоить gdb как инструмент и пользоваться им в дальнейшем без подсказок.
gdb и отладка -- это вам не R какой-нибудь и обработка данных. Вот командную строчку R и обработку данных в нём осваивать придётся пару рабочих дней. При условии что учебник матстатистики уже прочитан. gdb в этом смысле просто няшка, проблема для детского сада.
> Да, командная строка все еще заточена чтобы
> с ней в простых (и средних - для профессионалов) случаях работал
> пользователь, но в наиболее сложных случаях это или скрипт, написанный один
> раз и тщательно проверенный и отлаженный, или все-же GUI обертка. В
> этом смысле командная строка заточена также как универсальное средство межпрограммного
> взаимодействия с сохранением "человекочитаемости", и в общем это весьма неплохо...
Командная строка gdb создана для взаимодействия с пользователем, а не с программой. Для взаимодействия с другими программами у него есть другие интерпретаторы, об этом можно почитать в info gdb, напротив опции --interpreter. И тому есть причины, на самом деле: дефолтный интерпретатор совершенно не подходит для того, чтобы разбирать вывод gdb программно.
| |
|
|
|
|
|
|