Как произвести трассировку стека VLC?

Я сообщил об ошибке VLC и включил вывод bt full версии gdb , но ответ от представителя проекта заключается в том, что трассировка является «неполной» . Как я могу создать трассировку, которую можно было бы использовать разработчику? Их документация и отзывы об ошибках ничего не говорят о том, как это сделать.

One Solution collect form web for “Как произвести трассировку стека VLC?”

После ссылки, которую вы указали, единственная значимая часть вашего вопроса состоит в том, что они запрашивают символическую трассировку стека. Тем не менее, это не помогает объяснить, как это сделать .

(например, для тех, кто не знает или не помнит, трассировка символического стека может быть получена только путем компиляции двоичного файла с отладочной информацией)

Я нахожу эту другую страницу VLC более полезной в этой теме, и гораздо лучше, чем та, на которую ссылаются.

Отладка – VLC

При компиляции медиа-плеера VLC вы должны скомпилировать двоичный файл отладки, используя –enable-debug в скрипте ./configure.

В случае, обсуждаемом, и согласно ранее упомянутым ссылкам, я заменил здесь, может по необходимости.

Для чего он используется

Конечно, двоичный файл, скомпилированный в режиме отладки, будет или должен вести себя как выпускной (более или менее). Отличия:

  • разработчики могут вызвать сбой VLC, когда он достиг подозрительного состояния в целях разработки, в то время как выпускная версия не будет находиться в том же подозрительном состоянии
  • двоичные обратные следы имеют смысл в этом режиме, так как в него встроены символы.

    Как включить это

Как сказано выше, вам просто нужно добавить параметры CFLAGS = “- g” CXXFLAGS = “- g” –enable-debug на этапе ./configure.

Для того, чтобы войти в код, лучше сделать CFLAGS = “- g -Og” CXXFLAGS = “- g -Og”, также добавить –disable-optimizations и не использовать –enable-release. Замените -Og на -O0, чтобы компилятор не оптимизировал переменные.

Таким образом, после компиляции двоичного файла отладки вы можете отправить отчет об ошибке, описывающий, что вы делали, что привело к сбою и «gdb bt full», для разработчика (ов).

Смотрите также: VLC – Сообщить об ошибках

  • Как изящно выйти из Qemu VM с запущенным ядром
  • Ядро процесса сброса, не убивая процесс
  • Ошибка при установке gdb-arm-linux-gnueabi
  • Режим только для чтения в gdb
  • GDB вечно вешается на Solaris
  • gdb: останавливать программу при изменении переменной
  • Tshark не работает через gdb
  • Настройка точек останова удаленно с помощью gdb / gdbserver
  • Могут ли gdb отлаживать корневые программы suid?
  • Как я могу найти утечку памяти в текущем процессе?
  • Как настроить gdb для сканирования через кучную память?
  • Linux и Unix - лучшая ОС в мире.