getsentry / breakpad-tools

Prebuilt tools and examples to work with Breakpad's minidumps

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Breakpad Tools

Builds Breakpad and creates artifacts on different operating systems. To use it, clone on a compatible system, go to the folder of the respective operating system, and run make all or run one of the targets below.

git clone --recursive https://github.com/getsentry/breakpad-tools
cd breakpad-tools/linux && make all

Download

The latest builds can always be downloaded here:

Contents

Each platform build folder contains the following artifacts:

Libraries

  • libclient.a: Static library containing the breakpad ExceptionHandler
    target: make client

Tools

  • dump_syms: A tool to create breakpad symbols
    target: make dump_syms
  • minidump_dump: A tool to show raw contents of minidumps
    target: make minidump_dump
  • minidump_stackwalk: A tool to process minidumps
    target: make minidump_stackwalk

Examples

  • crash: A program that crashes and generates a minidump
    target: make crash
  • crash.sym: Breakpad symbols for the crashing program
    target: make symbols
  • mini.dmp: A crash dump of the crash executable
    target: make minidump
  • symbols/: Symbol folder structure required by the processor
    target: make dist (requires all other targets)

Please note that the examples are always built from scratch, so UUIDs will change!

Build Process

The breakpad libraries and tools are built with custom makefiles. Each OS folder contains a slightly different version customized to the platform. Breakpad has broken their own build files (especially on macOS) quite frequently, so this is the most stable approach.

The Windows build uses msbuild instead of a makefile. It currently does not generate the client library and symbols folders.

The breakpad submodule has been updated last on 2018-01-09. Future updates might require changes to the makefiles.

About

Prebuilt tools and examples to work with Breakpad's minidumps


Languages

Language:Makefile 79.9%Language:C++ 14.1%Language:Shell 4.9%Language:Batchfile 1.2%