Get breakpad
git clone https://chromium.googlesource.com/breakpad/breakpad git clone https://chromium.googlesource.com/external/gyp
Prepare windows
gyp\gyp.bat --no-circular-check breakpad\src\tools\windows\tools_windows.gyp gyp\gyp.bat --no-circular-check src\client\windows\breakpad_client.gyp
Prepare linux
- add src/third_party/lss/linux_syscall_support.h
Fix few things in VS studio in tools_windows
– library output from $(OutDir)lib\$(ProjectName).lib to $(OutDir)\$(ProjectName).lib
– add missing dependency lib Pathcch.lib
– unload gtest, gmock and dump_syms_unittest
Fix few things in VS studio in breakpad_client
– library output from $(OutDir)lib\$(ProjectName).lib to $(OutDir)\$(ProjectName).lib
– unload all unittests projects
– for crash_Generation_client, crash_generation_server, exception_handler, common, crash_generation_app
– c++ -> language -> enable RTTI YES
– c++ -> codegeneration ->runtime library -> MD/MDd
How to extract symbols
The simplest way is to use
dump_syms.exe APP_PATH\APP.exe > app.sym
but this doesn’t prepare correct structure for automatic dmp file evaluation, so we need to use symbolstore.py
Other links
- This blogpost seems to use my original post and add a few more notes: https://github.com/JPNaude/dev_notes/wiki/Using-Google-Breakpad-with-Qt#windows
- My original post: https://blog.inventic.eu/2012/08/qt-and-google-breakpad/