LINUX.ORG.RU

GDB 8.3

 ,


1

1

Состоялся релиз отладчика GDB версии 8.3.

Из нововведений:

  • Поддержка архитектуры RISC-V в качестве основной (native) и целевой (target) для систем семейства Linux и FreeBSD. Также поддержка архитектур CSKY и OpenRISC в качестве целевых.
  • Возможность получить доступ к регистрам PPR, DSCR, TAR, EBB/PMU, и HTM в ОС семейства Linux в системах на базе архитектуры PowerPC.
  • Вывод списка всех файлов, открытых конкретным процессом.
  • Поддержка IPv6 в GDB и GDBserver.
  • Экспериментальная поддержка компиляции и внедрения кода на C++ в контролируемый процесс (требует GCC версии 7.1 и выше).
  • Автоматическое кэширование индекса DWARF.
  • Новые команды: «frame apply COMMAND», «taas COMMAND», «faas COMMAND», «tfaas COMMAND», «set/show debug compile-cplus-types», «set/show debug skip» и т.д.
  • Улучшения в командах: «frame», «select-frame», «info frame»; «info functions», «info types», «info variables»;«info thread»;«info proc» и т.д.
  • и многое другое.

>>> Анонс

>>> Полный список изменений

Экспериментальная поддержка компиляции и внедрения кода на C++ в контролируемый процесс (требует GCC версии 7.1 и выше).

А код на C можно было инжектить?

mittorn ★★★★★ ()
Ответ на: комментарий от mittorn
*** Changes in GDB 7.9
...
* GDB now supports the compilation and injection of source code into
  the inferior.  GDB will use GCC 5.0 or higher built with libcc1.so
  to compile the source code to object code, and if successful, inject
  and execute that code within the current context of the inferior.
  Currently the C language is supported.  The commands used to
  interface with this new feature are:

     compile code [-raw|-r] [--] [source code]
     compile file [-raw|-r] filename

Ну и для команд вроде until, b if expr оно тоже может использоваться, вроде.

xaizek ★★★★★ ()

GNU Debugger

Долгой жизни проекту! Отличная новость, про отличную прогу. Сам пользуюсь, когда хочу выявить ошибки, и отсылать баг репорты в Debian bug tracking system.

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

Before incorporating significant changes, make sure that the person who wrote the changes has signed copyright papers and that the Free Software Foundation has received and signed them. We may also need an employer’s disclaimer from the person’s employer, which confirms that the work was not part of the person’s job and the employer makes no claim on it. However, a copy of the person’s employment contract, showing that the employer can’t claim any rights to this work, is often sufficient.

If the employer does claim the work was part of the person’s job, and there is no clear basis to say that claim is invalid, then we have to consider it valid. Then the person cannot assign copyright, but the employer can. Many companies have done this. Please ask the appropriate managers to contact assign@gnu.org.

anonymous ()
Ответ на: комментарий от xvoid

Чтобы заслать патч нужно подписать соглашение от FSF, отсканировать и отослать им, указать полный список файлов, которые ты собираешься править и только после их аппрува можно засылать патч.

Если ты работаешь на компанию, надо чтобы ещё юристы компании подписали соглашение.

DELIRIUM ★★★★★ ()
Последнее исправление: DELIRIUM (всего исправлений: 1)
Ответ на: комментарий от DELIRIUM

Предпочитаю pidof + /proc, в плане что процесс там понаоткрывал, а не кто посмел понаоткрывать мои порнофоточки. А вот наоборот, да, как ты сказал

linux-org-ru ()
Последнее исправление: linux-org-ru (всего исправлений: 1)

DDD - чем заменить?

Раньше использовал DDD. Очень удобно. Сейчас DDD не поддерживается, с переходом на UTF-8 стало совсем плохо. Чем заменить, можете посоветовать?

azorg ()
Ответ на: DDD - чем заменить? от azorg

Re: DDD - чем заменить?

http://gede.acidron.com/

Gede is a graphical frontend (GUI) to GDB written in C++ and using the Qt4 (or Qt5) toolkit. Gede can be compiled on (all?) Linux distributions and on FreeBSD. Gede supports debugging programs written in FreeBasic, C++, C and Rust.

The Gede sourcecode is licensed under the terms of the BSD license.

anonymous ()
Ответ на: комментарий от DELIRIUM

конечно. чтобы не было такого, как с ядром, которое навсегда засело на версии GPLv2 и никак невозможно сменить её на v3 или любую другую лицензию, так как невозможно спросить разрешения всех контрибьюторов.

eternal_sorrow ★★★★★ ()
Ответ на: DDD - чем заменить? от azorg

Re: DDD - чем заменить?

В vs code неплохой интегрирован. Даже с пол пинка к удалённому процессу через ssh подсосался. И на arm-m0 им тоже дебажил немного. Хотя если нужно больше (типа памяти и регистров) - пока ещё нет встроенного. Но можно команды напрямую в gdb слать или дописать 😁

anonymous ()