The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Выпуск отладчика GDB 7.12

08.10.2016 08:33

Доступен релиз отладчика GDB 7.12, поддерживающего отладку на уровне исходных текстов для широкого спектра языков программирования (Ada, C, C++, Objective-C, Pascal, Go и т.д.) на различных аппаратных (i386, amd64, ARM, Power, Sparc и т.д.) и программных платформах (GNU/Linux, Unix, Windows, macOS).

Ключевые улучшения:

  • По умолчанию для сборки применён компилятор C++. Возможность сборки компилятором Си сохранена, но требуется указание опции "--disable-build-with-cxx". В будущем будет оставлена только возможность сборки компилятором С++;
  • Реализована поддержка отладки программ, написанных на языке Rust;
  • Добавлена новая целевая платформа Andes NDS32 (nds32*-*-elf);
  • В средствах отладки программ на языке Фортран добавлена поддержка массивов и структур с полями на основе динамических типов;
  • Улучшения, связанные с Python API, в том числе добавлена функция $_as_string(val) для преобразования значения в строковое представление и расширена поддержка точек останова (в объекты gdb.Breakpoint добавлен атрибут "pending", реализованы новые события gdb.breakpoint_created, gdb.breakpoint_modified и gdb.breakpoint_deleted);
  • В команде 'x' обеспечена возможность указания отрицательного счётчика повторов для изучения содержимого памяти в обратную сторону, относительно текущего адреса, например:
    
        (gdb) bt
        #0  Func1 (n=42, p=0x40061c "hogehoge") at main.cpp:4
        #1  0x400580 in main (argc=1, argv=0x7fffffffe5c8) at main.cpp:8
    
        (gdb) x/-5i 0x0000000000400580
           0x40056a :      mov    %edi,-0x4(%rbp)
           0x40056d :     mov    %rsi,-0x10(%rbp)
           0x400571 :     mov    $0x40061c,%esi
           0x400576 :     mov    $0x2a,%edi
           0x40057b :
            callq  0x400536 
    
  • В случае краха (SIGSEGV) из-за блокировки выхода за границы буфера средствами Intel MPX теперь показывается тип переполнения, границы буфера и область куда был совершён выход;
    
       Program received signal SIGSEGV, Segmentation fault
       Upper bound violation while accessing address 0x7fffffffc3b3
       Bounds: [lower = 0x7fffffffc390, upper = 0x7fffffffc3a3]
       0x0000000000400d7c in upper () at i386-mpx-sigsegv.c:68
    
  • В команде "catch syscall" обеспечена возможность извлечения группы связанных системных вызовов при указании префикса 'group:' или 'g:';
  • В GDBserver добавлена возможность записи btrace без необходимости поддержания активного соединения с GDB, для платформ s390-linux, s390x-linux, powerpc64-linux и powerpc64le-linux добавлена поддержка обычных и быстрых точек трассировки;
  • Новые команды:
    • skip -file file
    • skip -gfile file-glob-pattern
    • skip -function function
    • skip -rfunction regular-expression (обобщённый вариант команды skip с поддержкой масок в именах файлов и регулярных выражений для имён функций);
    • maint info line-table REGEXP (показывает содержимое внутренней структуры line-table);
    • maint selftest (запускает любой вкомпилированный unit-тест)
    • new-ui INTERP TTY (запускает новый экземпляр интерфейса пользователя, используя указанный в поле INTERP интерпретатор и файл TTY для ввода/вывода);
  • Прекращена поддержка протоколов и систем мониторинга ПЗУ:
    • target m32rsdi (удалённая отладка M32R поверх SDI);
    • target mips (протокол удалённой отладки MIPS);
    • target pmon (PMON ROM monitor)
    • target ddb (DDB-вариант PMON для Vr4300 от компании NEC);
    • target rockhopper (вариант PMON для RockHopper от компании NEC);
    • target lsi (вариант PMO от LSI).


  1. Главная ссылка к новости (http://lists.gnu.org/archive/h...)
  2. OpenNews: Выпуск отладчика GDB 7.11
  3. OpenNews: Выпуск отладчика GDB 7.10
  4. OpenNews: Выпуск отладчика GDB 7.9
  5. OpenNews: Выпуск отладчика GDB 7.8
  6. OpenNews: Выпуск отладчика GDB 7.7
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/45291-gdb
Ключевые слова: gdb, debug
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (13) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, zxalexis (?), 12:51, 08/10/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • –5 +/
    Считаю, что отладчик не должен требовать плюсов... OSDev-щики не поймут и убегут в шланг...
     
     
  • 2.2, Аноним (-), 13:05, 08/10/2016 [^] [^^] [^^^] [ответить]  
  • +14 +/
    > Считаю, что отладчик не должен требовать плюсов...

    А вы считаете remote stub (который, кстати, можете реализовать самостоятельно) частью отладчика?

    > убегут в шланг

    Написанный на плюсах? С таким уровнем компетентности, как у вас, пусть бегут.

     
  • 2.3, Нанобот (ok), 14:37, 08/10/2016 [^] [^^] [^^^] [ответить]  
  • +4 +/
    >не поймут и убегут в шланг

    любителям замены шила на мыло сам бог велел постоянно куда-то бежать, ради самого процесса

     
  • 2.4, Аноним (-), 15:59, 08/10/2016 [^] [^^] [^^^] [ответить]  
  • +/
    > Считаю, что отладчик не должен требовать плюсов...

    Ваша религия позволяет давать ценные указания авторам софта, но не позволяет просто взять http://www.gnu.org/software/gdb/current/ и показать всем "как надо правильно"(тм анонимов опеннета)?

     
  • 2.5, Аноним 80_уровня (ok), 18:28, 08/10/2016 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Кульпрогеры хеловорлда на могучем Си™ поддерживают этот комментарий.
     
     
  • 3.6, Аноним (-), 19:17, 08/10/2016 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Очевидно ядро у вас целиком и полностью на плюсах написано? И загрузчик?
    Зачем вам эти хелловорлды - выкиньте их! 21ый век, новый линолеум, всё должно работать без сей уже.
     

  • 1.7, Аноним (-), 22:45, 08/10/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    ждем поддержки JavaScript
     
     
  • 2.8, Аноним (-), 22:09, 09/10/2016 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Продолжайте ждать
     
  • 2.9, imho (?), 22:11, 09/10/2016 [^] [^^] [^^^] [ответить]  
  • +/
    и html
     

  • 1.11, нет (??), 13:28, 10/10/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    с недавних пор gdb питончик стал требовать на целевой системе, что не может не огорчать. Закидываешь привычно gdb, и тут на тебе - скопируйте ещё ворох питоновского шлака.
     
     
  • 2.12, anonymous (??), 14:18, 10/10/2016 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Закидывай gdbserver или собирай без питона
     
  • 2.13, none (??), 12:18, 11/10/2016 [^] [^^] [^^^] [ответить]  
  • –1 +/
    а на чем вы предлагаете скрипты для gdb писать?
     
     
  • 3.14, нет (??), 09:13, 12/10/2016 [^] [^^] [^^^] [ответить]  
  • +/
    да хоть на брейнфаке - но эта возможность в отладчике №1 должна быть опциональна, не требующая тяжелого обвеса. Вредительство чистой воды.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру