URL: https://www.opennet.dev/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 134231
[ Назад ]

Исходное сообщение
"Выпуск отладчика GDB 15"

Отправлено opennews , 08-Июл-24 23:41 
Представлен релиз отладчика GDB 15.1 (первый выпуск серии 15.x, ветка 15.0 использовалась для разработки). GDB поддерживает отладку на уровне исходных текстов для широкого спектра языков программирования (Ada, C, C++, D, Fortran,  Go, Objective-C, Modula-2, Pascal, Rust и т.д.) на различных аппаратных (i386, amd64, ARM, Power, Sparc, RISC-V и т.д.) и программных платформах (GNU/Linux, *BSD, Unix, Windows, macOS)...

Подробнее: https://www.opennet.dev/opennews/art.shtml?num=61507


Содержание

Сообщения в этом обсуждении
"Выпуск отладчика GDB 15"
Отправлено Аноним , 09-Июл-24 00:44 
Очень сложный отладчик. Пытался к нему прикрутить свой текст. Немного не разобрался

"Выпуск отладчика GDB 15"
Отправлено mos87 , 09-Июл-24 07:45 
А надо было прикручивать код.

"Выпуск отладчика GDB 15"
Отправлено Аноним , 09-Июл-24 07:49 
Код каждый прикрутить может, а текст прикрутить это не фунт изюма.

"Выпуск отладчика GDB 15"
Отправлено Аноним , 11-Июл-24 18:35 
Какой то тупой вас диалог... вы статьёй не ошиблись? Лучше бы подумали о содержимом статьи
- первый же пункт - просто жесть:
> Ключевые улучшения:
>   * Для сборки GDB и GDBserver теперь необходим компилятор, поддерживающий C++17 (как минимум GCC 9).

- Речь то про повышение (условно говоря)системных-требований у рассматриваемого ПО
и ведь даже серьёзно в ущерб совмстимости - с другими ОС и форками линуксов,
да даже просто у условно-рассматриваемой - со всеми предыдущими версиями...
Улучшение?!
И почему то мне навеваеются воспоминания о методологиях MS (в ч.н.по принуждению  их пользователей - обновляться обновлять и так всю жизнь стать их придатком для обновлений)...

Я тут не к автору статьи придираюсь - а, к тому как хуцпистки авторы даже OSC ПО подают свою тут явно скрыто проплаченную Intel/AMD и прочими производителями аппаратуры - маркетинговую фактически же  деградацию их ПО, ничем не уступая в этом проприетарам из таких же ушлых, и значит в т.ч.полюблении взяток от перечисленных компаний; но, ведь это ПО системного уровня - с сопутствующими запросами привелегий у ОС и пользователя...


"Выпуск отладчика GDB 15"
Отправлено Аноним , 09-Июл-24 19:45 
Ну так код и есть текст. Для того чтобы соединить с программой текст на вашем языке и нужен отладчик. Ахаха, как смешно и остроумно - нужно было код. На чемодан поставь себе код.

"Выпуск отладчика GDB 15"
Отправлено Соль земли , 09-Июл-24 09:40 
Он ищет отладочные символы в файле. Форматы разные есть. DWARF, например. Возможно ты не добавил опцию -g

"Выпуск отладчика GDB 15"
Отправлено Аноним , 09-Июл-24 11:28 
Текст еще любит когда добавляют -О0.

"Выпуск отладчика GDB 15"
Отправлено Аноним , 09-Июл-24 20:07 
Не, тут ситуация сложнее - просто любитель, поэтому лапки вместо ручек. Сам формат не освоил. Времени не особо на это, но просто интересно. Обыкновенная лень разбираться. Как только это преодолеть, все будет норм. Спасибо хоть на добром слове и желании помочь! Не то что другие - явно ничего не знают, а что-то умное сказать хочется.

"Выпуск отладчика GDB 15"
Отправлено adolfus , 09-Июл-24 12:49 
Чего там рзабираться, все же программистские редакторы с gdb без проблем работают. Кнопку тиснул и редактор переключился в режим отладки. Может вы в нотепаде текст печатаете?

"Выпуск отладчика GDB 15"
Отправлено Бывалый Смузихлёб , 09-Июл-24 14:26 
Ну в том и дело, что работа типо в прослойке к GDB. А не в самом. И вот там, в лучших линуховых традициях, чёрт ногу сломит

"Выпуск отладчика GDB 15"
Отправлено Витюшка , 09-Июл-24 16:10 
Как раз наоборот. attach pid и готово.

Кроме консольного gdb нет ни одной работающей прослойки.

Они поддерживают дай бог 5% от возможностей gdb вроде самых самых примитивных и разваливаются на ходу.

Например VS Code прямо пишет что команды которые вбиваются напрямую в vs code не поддерживаются и могут нарушить работоспособность.


"Выпуск отладчика GDB 15"
Отправлено Бывалый Смузихлёб , 16-Июл-24 19:09 
Подобных инструментов более чем один. Например, был тот же WinDbg. В общем-то, неплохо помог, когда разгребал, почему виндовый ноут хз почему регулярно вырубался с синим экраном. Штука та неплохо и дампы разбирала.
Но в настоящее время это проблема, что посоны не могут запилить норм интерфейс или хотя бы возможности для того чтобы это сделал кто-то другой, а не заморачивались лепкой консольных команд и разбором выхлопа консоли

"Выпуск отладчика GDB 15"
Отправлено Аноним , 09-Июл-24 19:49 
Ну вот и напиши программистский редактор без отладчика. Ахаха, как смешно, нотепад! Почему не vi? Так ещё смешнее будет! Тоже мне пользователи - напиши Яндекс за час, там же только одна строчка поиска!

"Выпуск отладчика GDB 15"
Отправлено Аноним , 09-Июл-24 14:52 
> Очень сложный отладчик. Пытался к нему прикрутить свой текст. Немного не разобрался

Неужели кто-то повелся на совет редактить объектники текстовым редактором? :)


"Выпуск отладчика GDB 15"
Отправлено Аноним , 09-Июл-24 00:52 
>Продолжена реализация протокола DAP (Debugger Adapter Protocol).

Microsoft всегда делает своё. А могли бы просто написать пару библиотек + спецификацию для существующего протокола gdb, которому и так дофига отладчиков следовало.


"Выпуск отладчика GDB 15"
Отправлено Аноним , 09-Июл-24 00:55 
>http
>json
>процессы

Всё та же грёбанная модель, что и в LSP.


"Выпуск отладчика GDB 15"
Отправлено Аноним , 09-Июл-24 08:56 
LSP гениален, не сметь на него наезжать, или будешь иметь дело со мной.

"Выпуск отладчика GDB 15"
Отправлено Аноним , 09-Июл-24 14:27 
Аж трясёт.

"Выпуск отладчика GDB 15"
Отправлено Аноним , 09-Июл-24 11:10 
Разумеется они делают свое.
Иначе будут зависить от какого-то гнутого поделия и его безумных адептов, для которых stable is nonsense. Ну и поддержка больше нужна GDB, а не майкам.

"Выпуск отладчика GDB 15"
Отправлено Аноним , 09-Июл-24 12:09 
> спецификацию для существующего протокола gdb

Ну там протокол... Я не знаю, что сейчас у них, но лет двадцать назад я пытался сделать простейшую систему для программирования для детей и прикрутить туда отладчик, и я переплевался из-за того, что во всех тех протоколах gdb ты с одного файлового дескриптора читаешь выхлопы программы и gdb и отличить одно от другого возможно только если программа кооперирует. Например, что она выводит строку (line) целиком, вплоть до и вместе с \n. Если же программа делает что-нибудь в стиле printf("!"); fflush(stdin); то всё, приехали.

Это может и ничего так для вменяемых программ, но мне нужна была среда для невменяемых, в частности, чтобы вывод в консоль не буферизировался бы от слова совсем, чтобы если ты делаешь printf, то ты получаешь вывод, без всех этих "странностей" когда ты написал printf("hello world"), встал на бряке, а на экране пусто, и чтобы понять почему, надо понять что такое буферизация и зачем она нужна.

Протокол gdb, как и всё гнутое, сделан тяп-ляп, в том стиле который Эрик Раймонд потом пытался героизировать, в стиле "хакинга", то есть взять сделать костыль который работает в моём случае, а потом по мере выявления новых случаев добавлять костыли до тех пор, пока это возможно. А когда стало невозможно, про все остальные случаи сказать "ненужно".

То есть, при всём при том, что MS скорее всего в любом случае выпилила бы свой собственный протокол, но в данном случае у MS были очень хорошие причины для этого.

Разрабы gdb вроде работали над следующими версиями протокола, и может там они отделили ввод/вывод программы от ввода/вывода отладчика, но я уже не интересовался абсолютно. Это был для меня первый звоночек, что gnu отстой, а столлман позёр.


"Выпуск отладчика GDB 15"
Отправлено Аноним , 09-Июл-24 12:52 
Интересны у тебя наброс. Сначала описал свои горести, видимо чтобы тебе посочувствовали, хотя хм... скорей всего ты таким образом готовил высер в сторону GNU и Столлмана. Пройдя через грабли можно уже с чистой совестью хамить. Так ведь.

"Выпуск отладчика GDB 15"
Отправлено Вы забыли заполнить поле Name , 09-Июл-24 13:02 
Проблемы негров фермера не волнуют.

"Выпуск отладчика GDB 15"
Отправлено Аноним , 09-Июл-24 14:32 
>переплевался из-за того, что во всех тех протоколах gdb ты с одного файлового дескриптора читаешь выхлопы программы и gdb

Это необходимо было бы пофиксить, но зачем же систему команд и парсер менять? Что всем теперь новые парсеры и сериализаторы написать и свою систему переделать из-за того, что у M$ NIH-синдром? Все просто забили на этот протокол, из IDE его поддерживают только поделки на основе VSCode. Который не нужен.


"Выпуск отладчика GDB 15"
Отправлено akadem , 09-Июл-24 13:05 
Называется это добро gdb/mi (machine interface). Я писал для него клиент. Такого и врагу не пожелаешь.

"Выпуск отладчика GDB 15"
Отправлено Аноним , 10-Июл-24 15:15 
Наоборот нужно больше. Например, прикрутить реализацию natvis для более структурированной визуализации данных, а не эти питонии костыли в принтерах.
Ну и сам DAP допиливать. А то пацаны из Ghidra говорят, что для нормального системного отладчика там функционала не хватает.

"Выпуск отладчика GDB 15"
Отправлено Аноним , 09-Июл-24 06:19 
Отлажмваем Модула-2 всем офисом. Полет нормальный.

"Выпуск отладчика GDB 15"
Отправлено Аноним , 09-Июл-24 08:22 
Не куда вы не летите, только топчетесь на месте.

"Выпуск отладчика GDB 15"
Отправлено Аноним , 09-Июл-24 08:49 
Никуда. Извините )

"Выпуск отладчика GDB 15"
Отправлено Аноним , 09-Июл-24 10:12 
Зависть.

"Выпуск отладчика GDB 15"
Отправлено xPhoenix , 09-Июл-24 09:57 
На Modula-2 написан код систем космического модуля "Буран". Жаль, не все поймут... ;-)

"Выпуск отладчика GDB 15"
Отправлено Аноним , 09-Июл-24 10:11 
НПО Решетнёва до сих пор его использует. Только не гццшный.

"Выпуск отладчика GDB 15"
Отправлено Аноним , 09-Июл-24 12:18 
Компилятор от VAX'a? Т.к., советских спутниках использовался, может, и сейчас используется, ЦПУ 1839ВМ1.

"Выпуск отладчика GDB 15"
Отправлено Аноним , 09-Июл-24 10:29 
У самурая нет цели только путь.

"Выпуск отладчика GDB 15"
Отправлено Витюшка , 09-Июл-24 10:55 
А какое состояние у Modula-2? Как у Бурана?

"Выпуск отладчика GDB 15"
Отправлено Аноним , 09-Июл-24 12:02 
Только где он тот Буран...

"Выпуск отладчика GDB 15"
Отправлено Аноним , 09-Июл-24 14:54 
> Только где он тот Буран...

В парке развлечений стоял. Но и оттуда зачем-то убрали. Видимо по принципу "так не доставайся ж ты никому!"


"Выпуск отладчика GDB 15"
Отправлено Вы забыли заполнить поле Name , 09-Июл-24 13:03 
Исходники бы глянуть.

"Выпуск отладчика GDB 15"
Отправлено Аноним , 09-Июл-24 13:33 
Хорошая попытка, наш китайский друг, но нет.

"Выпуск отладчика GDB 15"
Отправлено Аноним , 09-Июл-24 18:28 
А на Драконе тогда что написано?

"Выпуск отладчика GDB 15"
Отправлено Аноним , 10-Июл-24 16:24 
CrewDragon

"Выпуск отладчика GDB 15"
Отправлено _ , 09-Июл-24 18:31 
>На Modula-2 написан код систем космического модуля "Буран". Жаль, не все поймут... ;-)

Отчего же, всё как раз понятно...
Быстрее всего ты - очередной мимокрокодил (трепло по простому).
Нам тут неоднократно пели о том что там был Дракон, а ты поёшь не в ногу :-)

PS: А Буран всё же жаль. Артефакт исчезнувшей супер-цивилизации итить .... :(


"Выпуск отладчика GDB 15"
Отправлено Аноним , 10-Июл-24 06:44 
>А Буран всё же жаль. Артефакт исчезнувшей супер-цивилизации итить .... :(

Наоборот же. Списали оверзатратный проект раньше конкурентов. "Шаттлы" же тоже закрыли, только при этом похоронив в них кучу денег.

Настоящий реюз ракет -- это как у владельца Твиттера.


"Выпуск отладчика GDB 15"
Отправлено Аноним , 11-Июл-24 19:13 
> Наоборот же. Списали оверзатратный проект раньше конкурентов. "Шаттлы" же тоже закрыли,
> только при этом похоронив в них кучу денег.

Что, прям похоронив?
В где была бы МКС без шатлов? Как бы притащили на нужную орбиту тот же Рассвет, у которого своих движком нету?
Кто бы отремонтировал Хабл?
Чем бы ты закинули на орбиту больше тысячи тонн грузов, особенно крупногабаритных?
Да получилось дорого, но "я использовал технологии своего времени"

> Настоящий реюз ракет -- это как у владельца Твиттера.

Да, вот только во времена шатлов не было такой микроэлектроники, которая бы позволяла провернуть фокус "у нас есть десяток-два движков, и мы будем ими всеми управлять с приемлимой точность".
Попытка Н-1 хорошо показала, насколько это сложно.



"Выпуск отладчика GDB 15"
Отправлено Соль земли , 09-Июл-24 09:38 
Ещё есть графический интерфейс https://cutter.re

"Выпуск отладчика GDB 15"
Отправлено Аноним , 09-Июл-24 10:31 
А ещё есть Ида про.

"Выпуск отладчика GDB 15"
Отправлено Аноним , 09-Июл-24 12:20 
К чему здесь упоминать проприетарь?

"Выпуск отладчика GDB 15"
Отправлено Аноним , 09-Июл-24 14:35 
Потому что это вообще единственная рабочая вещь.

"Выпуск отладчика GDB 15"
Отправлено Аноним , 09-Июл-24 14:55 
> Потому что это вообще единственная рабочая вещь.

Экий даунппей анбшной гидры. И да, иметь дело с IllF*ck'ом - таки хреновая затея.


"Выпуск отладчика GDB 15"
Отправлено Аноним , 10-Июл-24 11:51 
Не имей дело с ильфаком, имей дело с 6.1.

"Выпуск отладчика GDB 15"
Отправлено Бывалый Смузихлёб , 09-Июл-24 14:29 
Оно денюх стоит. Поэтому ненужно

"Выпуск отладчика GDB 15"
Отправлено Аноним , 10-Июл-24 11:52 
6.1 денег стоит?!

"Выпуск отладчика GDB 15"
Отправлено Аноним , 09-Июл-24 11:10 
Пф-ф-ф, gdb -tui

"Выпуск отладчика GDB 15"
Отправлено Аноним , 09-Июл-24 14:34 
А толку то, ретдек всё равно как был говном, так и остался, все продолжают юзать айду + хекс рэйс.

"Выпуск отладчика GDB 15"
Отправлено Аноним , 09-Июл-24 11:46 
Ну и как? Кто пользовался? Нормально отлаживает?

"Выпуск отладчика GDB 15"
Отправлено Соль земли , 09-Июл-24 12:39 
Показывает позицию в коде программы, значение регистров проца, ячеек памяти (куча/стек/data/bss), ассемблерный вид. А что ещё надо, чтобы понять когда и почему значение переменной изменилось?

"Выпуск отладчика GDB 15"
Отправлено Аноним , 09-Июл-24 13:34 
Можно дебажить принтами.

"Выпуск отладчика GDB 15"
Отправлено Аноним , 09-Июл-24 14:57 
> Можно дебажить принтами.

Можно. Но если раз в месяц вон та онлайн штука упала и сделала core dump, так несподручно будет. В таком случае проще core dump поковырять в сабже бывает.


"Выпуск отладчика GDB 15"
Отправлено n00by , 10-Июл-24 14:25 
> А что ещё надо, чтобы понять когда и почему
> значение переменной изменилось?

Для отлова ошибок второго порядка (use-after-free и т.п.) -- аппаратная точка останова на чтение-запись адреса переменной, либо трасировка с остановом по условию (долго). Понимать "че же я там понаписал в исходниках", пошагово отлаживая - так себе идея.


"Выпуск отладчика GDB 15"
Отправлено Соль земли , 10-Июл-24 18:01 
Это когда у тебя огромный монолит. Сейчас модно дробить на более отлаживаемые модули.

"Выпуск отладчика GDB 15"
Отправлено n00by , 10-Июл-24 18:45 
Я догадываюсь, что ныне не у всех в моде понимать, что там понаписано в исходниках, глядя на исходники, и проверять это отладочным выводом и тестами. Если же так интересно, что там у меня, то мне отладчик необходим, когда исходников нет. Или когда значение регистров процессора волшебным образом меняется, потому что я не настроил альтернативный стек для обработчика сигналов и при неудачном положении звёзд перезаписывается uc_mcontext - это как раз подпадает под случай "не понял, что написал". Такого рода ошибку ты никак не отладишь, усердно нажимая F5.

"Выпуск отладчика GDB 15"
Отправлено n00by , 10-Июл-24 14:30 
Отлаживает нормально, но после OllyDbg и подобного может порвать шаблон или ещё что.

"Выпуск отладчика GDB 15"
Отправлено Аноним , 11-Июл-24 15:42 
Коллеги, поделитесь успехами. Удалось ли отладить код на Modula-2?

"Выпуск отладчика GDB 15"
Отправлено Аноним , 11-Июл-24 18:54 
Это же OSC, а главный его плюс: лопата есть - вперед расширять проход самому...