Создатель Qt с Breakpad

Я хочу развернуть обработчик сбоев в моем приложении Qt, которое я создал с помощью Qt Creator. После некоторых поисков может показаться, что Breakpd от Google будет делать именно то, что мне нужно, однако руководства по этому поводу довольно легкие. В результате у меня есть ряд вопросов, на которые я надеюсь получить ответы.

  1. Как мне создать выпуск с конфигурацией отладочной информации в Qt Creator?
  2. Я следовал примеру здесь, и я могу создать файл .dmp в Windows.
  3. Как я могу использовать Breakpad для автоматической передачи мне этого dmp-файла?
  4. Как я могу прочитать этот файл с помощью Breakpad?

В настоящее время я развертываю свое приложение в Windows, поэтому я могу открыть файл .dmp в Visual Studios 2008 и просмотреть информацию об отладке, только если я создаю приложение в режиме отладки (поэтому я получаю файлы .pdb). Однако в конечном итоге я хочу, чтобы это работало на нескольких платформах, поэтому мне было интересно, какие инструменты Breakpad предоставляет для создания трассировки стека вне Visual Studios?

Учебники по Breakpad кажутся довольно легкими, поэтому, если есть хороший учебник, который тоже может помочь, я бы с удовольствием его прочитал.

Спасибо

Хорошо, я думаю, что нашел ответ на 1. Если вы добавите следующие строки в свой файл .pro (только для выпуска), вы создадите выпуск с отладочной информацией на

QMAKE_CFLAGS_RELEASE -= $$QMAKE_CFLAGS_RELEASE
QMAKE_CFLAGS_RELEASE += $$QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO
QMAKE_CXXFLAGS_RELEASE -= $$QMAKE_CXXFLAGS_RELEASE
QMAKE_CXXFLAGS_RELEASE += $$QMAKE_CXXFLAGS_RELEASE_WITH_DEBUGINFO
QMAKE_LFLAGS_RELEASE -= $$QMAKE_LFLAGS_RELEASE
QMAKE_LFLAGS_RELEASE += $$QMAKE_LFLAGS_RELEASE_WITH_DEBUGINFO

Мне все еще нужно выяснить 3 и 4. Любая помощь будет полезна.


person Jon    schedule 04.08.2011    source источник


Ответы (1)


Вы можете взглянуть на этот проект: https://github.com/AlekSi/breakpad-qt

Документация по проекту довольно скудная, но, по крайней мере, в нем есть подпроекты handler и sender, которые могут ответить на ваши вопросы №3 и №4.

person Max Desiatov    schedule 25.08.2011